问题标签 [spring-cloud]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2847 浏览

spring-cloud - 设置 server.contextPath 的 Spring Boot 与通过 Eureka Server 到 hystrix.stream 的 URL

我有运行 Turbine 实例的 Eureka Server 和一些连接到它的发现客户端。一切正常,但如果我注册一个已设置的发现客户端server.contextPath,它不会被识别,InstanceMonitor并且涡轮流无法组合它的hystrix.stream.

这是它在 Eureka/Turbine 服务器的日志中的样子:

它尝试从http://user-service:8887/hystrix.stream正确的 URL (包括 sever.contextPath 应该在的位置)获取 hystrix 流http://user-service:8887/uaa/hystrix.stream

application.yml客户端包含:

我的问题是:我应该向这个用户服务发现客户端添加一些额外的配置选项来注册正确的 hystrix.stream URL 位置吗?

我还没有深入研究,如果在得到该问题的答案之前发现了什么,我会告诉你。

当前解决方案

server.contextPath使用and时存在一个问题management.context-path。当两者都设置好时,涡轮机流正在运行${HOST_URL}/${server.contextPath}/${management.context-path}/hystrix.stream。在那种情况下,我不得不放弃使用server.contextPath(我用控制器中的前缀替换了它@RequestMapping)。

现在,当您使用 user 时management.context-path,您的 hystrix.stream 将从使用它作为前缀的 URL 提供。在这种情况下,您必须遵循 Spencer 的建议并设置

当然,这management.context-path必须为所有发现客户端设置相同的值 - 可以使用 Spring Cloud Config http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html轻松完成

0 投票
2 回答
3568 浏览

spring - 在 PCF 上部署 Spring Boot 的 Hystrix 仪表板不显示指标

我使用 Spring boot 和 spring cloud starter hystrix 库创建了一个简单的应用程序。

在我的 build.gradle 中:

我使用上述库将一个应用程序部署为 hystrix 仪表板,并且@EnableHystrixDashboard

然后我部署了另一个带有注释的应用程序@EnableHystrix

我添加了一个组件,该组件具有我通过控制器调用的命令,只是为了测试一下:

hystrix 应用程序运行良好。当我点击 URL 时,我看到了流,我在这里输入了一个要点的输出。

我只是看到一遍又一遍地重复。

我的仪表板已启动并正在运行,当我输入正在运行的 hystrix 示例应用程序的 URL 时,我会看到一个加载屏幕:

hystrix 仪表板加载屏幕

然后,当我再次检查我的 hystrix 应用程序时,我看到了:

我不知道从这里去哪里。我尝试部署 hystrix 仪表板战争,而不是自己构建它,我从这里下载但得到了相同的结果。

我还注意到浏览器控制台中的一些 JavaScript 错误输出,我将它们放在这里以防万一。

在服务器日志中,我一遍又一遍地看到这一点:

2015-02-15 20:03:55.324 信息 9360 --- [nio-8080-exec-9] ashboardConfiguration$ProxyStreamServlet:

代理打开连接到:http://myappurl/hystrix.stream

我现在要尝试让涡轮机运行,看看使用它是否能神奇地修复问题。以为我也会在这里发帖,尽管有人可能会根据我迄今为止所做的事情发现我的错误。

编辑:我没有提到的重要一点是我在 PCF 上部署了应用程序和仪表板。这似乎很重要,因为当我在本地部署时不会发生此问题。仍然不知道是什么原因造成的。

0 投票
1 回答
1450 浏览

spring-cloud - 春天云总线

我看到目前 Spring Cloud Bus 使用的是 rabbit。是否有可能在某个时候将其移植到 kafka ( http://kafka.apache.org )?

0 投票
1 回答
382 浏览

spring - 没有授权步骤的spring cloud oauth sso

我有一个使用 jpa 后端存储帐户的 spring cloud oauth @EnableAuthorizationServer。我还有几个不同的客户端、一个网站、一个内部网和一个 ionic 移动应用程序。

所有客户端在 oauth 配置块中都有单独的客户端凭据内联。

然后我尝试使用spring cloud sso不必再次登录。

我的问题是我想删除授权步骤,因为我所有的客户都是我知道的,我只是希望用户在我的所有应用程序中登录。

spring cloud sso 有可能吗?

0 投票
1 回答
7852 浏览

java - 使用 Spring Cloud 连接器访问 CloudFoundry 用户提供的服务

我正在尝试使用 Spring Cloud 从 Cloud Foundry 应用程序中使用通用 REST 服务。

该服务是使用 Spring Boot 创建的,如下:

这工作正常 - 我可以访问http://www.example.com/srv/demo/sayHi并获得“你好!” 背部。

接下来,我使用 CF-CLI 创建了一个用户提供的服务实例并将其绑定到我的应用程序。我现在可以在VCAP_SERVICES.

接下来,如此所述,我将此 bean 添加到我的应用程序的 Spring 配置中,并将connector-type设置设置为我的原始控制器(我也有对其的引用)。

现在,当我自动连接"myDemoService"到我的应用程序时,

我收到一个错误:

找不到指定类型的服务。

我确保包含所有必需的依赖项,包括spring-cloud-spring-service-connectorspring-cloud-cloudfoundry-connector.

这里出了什么问题?我是否提供了错误的 bean 参数?任何帮助深表感谢。

0 投票
1 回答
3173 浏览

spring - 如何配置具有特定区域的 QueueMessagingTemplate 以向 SQS 发送消息?

我目前正在使用 Spring 4.1.4 使用 STS 3.6.3SR1。尝试测试 spring-cloud-aws 在我们的应用程序中使用的可行性。

与问题相关的罐子:

  1. spring-cloud-aws-autoconfigure-1.0.0.RC2.jar
  2. spring-cloud-aws-context-1.0.0.RC2.jar
  3. spring-cloud-aws-core-1.0.0.RC2.jar
  4. spring-cloud-aws-messaging-1.0.0.RC2.jar

使用 aws-sdk-1.9.19

这是我在 spring-cloud-aws starter page之后的 applicationContext 文件。

Spring-cloud-aws 的起始页建议 queuemessagingtemplate bean 在使用消息传递命名空间时会自动注入一个 AmazonSQS bean。但是,据我了解,我遇到了关于将字符串值区域转换为 AWS 枚举值区域的错误。

以下是相关日志:

有人可以阐明我的上下文文件是否不正确吗?我相信us-east-1是指定区域的正确方法,但我错过了什么吗?

谢谢你。

0 投票
1 回答
8214 浏览

spring-cloud - 是否可以在 BootstrapConfiguration 上使用 @EnableFeignClients?

我想使用一个PropertySourceLocator必须在引导期间注册的假客户端。我有以下内容spring.factories

feign 客户端自动装配到MyPropertySourceLocator. 但是,虽然同一个客户端在常规 bean 中工作,但它在这里不起作用。所有请求都失败,但出现以下异常:

这发生在@FeignClient(url = "localhost:8080"). 使用功能区@FeignClient("config")完全失败:

我想使用 REST 访问配置(因此假装)。可能的解决方法当然是直接使用 feign。

0 投票
1 回答
12205 浏览

spring-cloud - 多条 Zuul 路由到一项服务

我看到的大多数示例都是对一项服务的一种路由定义。

所以这种事情:

假设我想将多条路由路由到一个服务,所以实际上它是这样的:

这在配置文件中是不允许的,您也不允许使用相同的路由名称两次。有什么真正的方法可以做到这一点吗?

0 投票
7 回答
30415 浏览

java - Spring Cloud - Zuul 代理正在生成 No 'Access-Control-Allow-Origin' ajax 响应

启动应用:

我的 YAML 文件是这样的:

我有一个名为 springapp 的微服务应用程序(在端口 8081 上)并有一些休息服务。下面是我的客户端 UI 应用程序:

但我得到一个

此 UI HTML5 应用位于http://localhost:8383/SimpleAPp/index.html上。CORS,CORS,CORS ...请帮助。顺便说一句,http://localhost:8080/zuul/springapp/departments在浏览器地址栏上返回一个 json 列表。这里的 spring.io博客说不需要过滤器,因为 zuulproxy 负责处理,但我不知道为什么它对我不起作用。

0 投票
1 回答
2815 浏览

docker - Spring Cloud Samples Eureka - Docker - 在链接中使用下划线

在使用 Spring Cloud、Eureka 和 Docker 时,我可能遇到了一个有趣的异常情况。我不确定我是否发现了问题或行为是否符合预期,但这是要点。

我首先从在一个命名的 docker 容器中运行的 eureka 开始。接下来,我使用 ClientDiscoveryEnabled 启动一个 docker 客户端。docker 客户端容器正在使用 docker “link” 参数来获得对 eureka 容器的主机名可访问性。yaml 文件有一个用于连接到属性驱动的 Eureka 的条目:

一切都很好,除非我尝试在容器名称中使用下划线。如果我使用下划线来命名我的容器,客户端容器无法使用 Eureka 注册完全解析此名称。如果我删除下划线,一切正常。也许我错过了一些东西,这是意料之中的,但我没有看到任何提到这个“功能”。

我的客户来自 Spring-Cloud-Samples feign-eureka 项目。下面是剧情...

这将起作用,客户将注册:

以下将不起作用!Eureka 会启动,客户端会启动,但无法注册:

以下是日志条目和后续异常:

我可以从运行 /bin/bash 的容器中 ping “foo_bar”,而不会出现问题。

我不确定断开连接的来源。或者也许这是我不知道的功能。

有任何想法吗?