问题标签 [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 回答
476 浏览

java - 无法制作 spring-cloud-config 的 Maven 构建

我正在尝试制作 spring-cloud-config 的 Maven 构建。JGitEnvironmentRepositoryTests 类中的所有测试都失败,并出现以下异常堆栈跟踪:

我的 SSH 密钥在 .ssh 文件夹中正确配置,因为我已经使用 github 对其进行了测试并且工作正常。

0 投票
1 回答
587 浏览

heroku - Heroku 的工头没有云连接器?

我正在尝试使用 Heroku 运行 spring-cloud hello world。我正在尝试使用工头,我得到以下堆栈跟踪:

我错过了一个“工头”连接器吗?

0 投票
1 回答
1767 浏览

apache-camel - 使用 Spring Cloud 时,Apache Camel 是否无关紧要?

我参与了使用 Spring Cloud 和 Apache Camel 的服务设计。今天,当一位同事问(也许提倡会是一个更好的词)我们是否真的需要 Apache Camel 时,我吃了一惊。在他看来,我们讨论的大多数下游系统都是基于 REST 的,因此不需要集成框架。如果我没记错的话,他还暗示微服务和集成框架不兼容。

我开始热情地建议 Spring Cloud 帮助解决部署/操作问题,而集成框架解决集成问题并且它们具有正交要求。

以下是系统将用于通信的一些协议:

未知协议:当我们集成到客户环境中时,我们需要与他们的系统集成。通信协议尚不清楚。

Martin Fowler 和 James Lewis 的以下声明似乎表明 ESB 和微服务是不兼容的:“我们无法抗拒提及 Jim Webber 的声明,即 ESB 代表“Egregious Spaghetti Box”。现在,您认为该声明在多大程度上适用于像 Apache Camel 这样的集成框架?

更一般地说,我的同事有意见吗?这是否意味着集成模式在微服务中没有位置?

0 投票
2 回答
6855 浏览

spring-cloud - spring-cloud 与ribbon/eureka/hystrix 使用restTemplate 无法设置连接/读取超时

我已经使用 spring-cloud 构建了一个 Spring Boot 应用程序,并希望在我的客户端应用程序(这也是一个微服务)中使用 RestTemplate,以便我可以继续使用 mockMvc 进行集成测试。我正在使用默认的ribbon/eureka/hystrix 客户端设置和我正在调用的服务中的客户端微服务和eureka 客户端。这是有效的(一旦我发现 serviceIds 是在 restTemplate 中标识服务端点的东西)。我的问题是我似乎无法从默认的 300 毫秒更改 restTemplate 读取或连接超时。

通话详情:

使用 application.properties 包含:

有人知道我需要什么属性来修改restTemplate的默认超时吗?文档在这个主题上非常简单,似乎最近的代码甚至允许将 restTemplate 用于功能区/尤里卡弹簧启动默认值。也许这还没有建成。

0 投票
1 回答
2287 浏览

spring-boot - 使用 Spring Boot CLI 启动 customer-stores-ui/app.groovy 时无法解析类 EnableZuulProxy

我对 Spring Boot 和 Spring Cloud 很陌生,并试图启动客户商店示例。我让微服务运行,但每次我尝试启动 UI 时

我得到以下异常:

好的,这似乎是一个缺失的依赖项。但我不知道如何添加这种依赖关系。我试过:

但这不会改变任何事情。有任何想法吗?提前致谢。

0 投票
1 回答
820 浏览

spring-cloud - 关于 Spring Cloud 本地配置连接器和任意属性的询问

我有许多我想通过文件提供的属性(例如 google api 密钥) (请参阅此处spring-cloud.properties的 spring cloud 本地配置连接器文档)。

这是我所做的:

1)将我的google api密钥放入spring-cloud.properties文件中,如下所示:

2)尝试如下加载:

但是似乎properties我的变量applicationInstanceInfo总是空的......

见源代码:空地图

这是预期的行为吗?本地配置连接器如何用于检索任意属性,例如 google api 密钥(在开发和云中将有所不同)。

提前致谢,

0 投票
1 回答
3279 浏览

java - javanica中的Hystrix异步方法不在spring-boot java应用程序中运行

我正在使用 spring-cloud-starter(即具有所有微服务功能的 spring boot)。当我在使用 javanica @HystrixCommand 注释的组件中创建 hystrix 方法时,请按照 javanica github 站点 ( https://github.com/Netflix/Hystrix/tree/master/hystrix-contrib/hystrix-javanica ) 上的说明进行操作该方法异步运行,无论我使用他们的'Future<>'还是反应式执行'Observable<>',什么都不会运行/执行,
java.lang.ClassCastException: springbootdemo.EricComponent$1 cannot be cast to springbootdemo.Eric每当我尝试提取结果(在Future<>的情况下)或得到一个回调(在响应式执行的情况下......并且 println 的不触发所以它真的没有运行)。

为什么我要返回 aEricComponent$1而不是 a Eric?顺便说一句,Eric只是一个带有 2 个字符串的简单类......它被省略了。

我想我必须显式执行,但这暗示了我,因为:1)使用 Future<> 执行它,queue() 方法不可用,因为文档声称和 2)使用 Observable<> 执行它确实没有'我得到的执行它的方法。

0 投票
2 回答
4671 浏览

java - Having an issue with launching Spring Cloud Hystrix Dashboard Example

Trying to launch a Hystrix dashboard and receiving an error upon launch. Following the example provided via github as the base. Have not made any changes to the code really. Just trying to launch.

Below is the error being reported:

I have tried both spring-cloud-starters 1.0.0.BUILD-SNAPSHOT & 1.0.0.M1.

0 投票
3 回答
26662 浏览

spring - Spring Boot 配置服务器

我一直在尝试掌握位于此处的 Spring Boot 配置服务器:https ://github.com/spring-cloud/spring-cloud-config在更彻底地阅读了文档之后,我能够完成大多数工作我的问题。但是,我确实必须为基于文件的 PropertySourceLocator 编写一个附加类

然后我将它添加到 ConfigServiceBootstrapConfiguration.java

最后,这做了我想要的。现在我很想知道这是否是我应该做的,或者我是否仍然缺少某些东西并且这已经被处理并且我只是错过了它。

*****编辑戴夫要求的信息******

如果我取出文件属性源加载器并更新 bootstrap.yml

示例应用程序在启动时引发以下错误:

这就是为什么我认为需要额外的课程。就测试用例而言,我相信您正在谈论 SpringApplicationEnvironmentRepositoryTests.java 并且我同意创建环境是可行的,但总的来说,当 uri 协议为“文件”时,应用程序似乎没有按预期运行。

******其他编辑********

这就是我理解它的工作方式:示例项目依赖于 spring-cloud-config-client 工件,因此对 spring-cloud-config-server 工件具有传递依赖。客户端工件中的 ConfigServiceBootstrapConfiguration.java 创建一个 ConfigServicePropertySourceLocator 类型的属性源定位器 bean。配置客户端工件中的 ConfigServicePropertySourceLocator.java 具有注释 @ConfigurationProperties("spring.cloud.config") 并且属性 uri 存在于该类中,因此在 bootstrap.yml 文件中设置 spring.cloud.config.uri 。

我相信 quickstart.adoc 中的以下声明强化了这一点:

当它运行时,如果它正在运行,它将从端口 8888 上的默认本地配置服务器获取外部配置。要修改启动行为,您可以使用更改配置服务器的位置bootstrap.properties(例如application.properties,但对于应用程序上下文的引导阶段),例如

---- spring.cloud.config.uri:http ://myconfigserver.com

在这一点上,JGitEnvironmentRepository bean 是如何被使用并寻找到 github 的连接的。我假设由于 uri 是在 ConfigServicePropertySourceLocator 中设置的属性,因此任何有效的 uri 协议都可以用于指向某个位置。这就是为什么我使用 'file://' 协议认为服务器会获取 NativeEnvironmentRepository。

所以在这一点上,我确定我要么缺少某些步骤,要么需要添加文件系统属性源定位器。

我希望这更清楚一点。

全栈:

0 投票
2 回答
350 浏览

heroku - 使用 Spring Cloud Connector for Heroku 连接多个 RedisLabs 数据库

我的应用程序需要多个RedisLabs 数据库,如其主页中所述:

计划中的多个专用数据库

我们在一个计划中启用多个数据库,每个数据库都以专用进程和非阻塞方式运行。

我依靠Spring Cloud Connectors来连接到 Heroku(或本地的 Foreman),似乎 RedisServiceInfoCreator 类允许单个 RedisLabs URL,即REDISCLOUD_URL

以下是我如何配置我的第一个 redis 连接工厂:

如果我打算使用多个 redis labs 数据库,我应该如何配置第二个连接工厂?