我已经从spring的initialzr生成了一个Spring Boot配置服务器。
我已经用brew安装了rabbitmq。initialzr是使用启动版本2.1.1.RELEASE和云版本Greenwich.M3生成的。
简单的rest服务连接到rabbitmq队列。配置服务器连接到gitlab配置报告。
但是,当我提交并推送更改时,服务应用程序不会反映该更改。推送完成后,配置服务器将收到日志消息。谁能说出可能出了什么问题?兔子控制台中似乎从未出现过任何消息。不过,我已经能够通过rabtmq通过执行器/总线刷新来刷新属性。
config-server在将更改提交到config-repo的employee-service.yml文件时记录消息:
2018-12-07 11:53:12.185 INFO 84202 --- [nio-8888-exec-1] o.s.c.c.monitor.PropertyPathEndpoint : Refresh for: employee:service
2018-12-07 11:53:12.228 INFO 84202 --- [nio-8888-exec-1] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$b43cc593] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2018-12-07 11:53:12.253 INFO 84202 --- [nio-8888-exec-1] o.s.boot.SpringApplication : No active profile set, falling back to default profiles: default
2018-12-07 11:53:12.259 INFO 84202 --- [nio-8888-exec-1] o.s.boot.SpringApplication : Started application in 0.072 seconds (JVM running for 3075.606)
2018-12-07 11:53:12.345 INFO 84202 --- [nio-8888-exec-1] o.s.cloud.bus.event.RefreshListener : Received remote refresh request. Keys refreshed []
2018-12-07 11:53:12.345 INFO 84202 --- [nio-8888-exec-1] o.s.c.c.monitor.PropertyPathEndpoint : Refresh for: employee-service
2018-12-07 11:53:12.377 INFO 84202 --- [nio-8888-exec-1] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$b43cc593] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2018-12-07 11:53:12.398 INFO 84202 --- [nio-8888-exec-1] o.s.boot.SpringApplication : No active profile set, falling back to default profiles: default
2018-12-07 11:53:12.402 INFO 84202 --- [nio-8888-exec-1] o.s.boot.SpringApplication : Started application in 0.056 seconds (JVM running for 3075.749)
2018-12-07 11:53:12.489 INFO 84202 --- [nio-8888-exec-1] o.s.cloud.bus.event.RefreshListener : Received remote refresh request. Keys refreshed []
配置服务器具有此应用程序。yml:
---
server:
port: ${PORT:8888}
spring:
cloud:
bus:
enabled: true
config:
server:
git:
uri: ${CONFIG_REPO_URI:git@gitlab.<somedomain>:<somegroup>/config-repo.git}
search-paths:
- feature/initial-repo
main:
banner-mode: "off"
和ConfigServerApplication.java:
@SpringBootApplication
@EnableConfigServer
public class ConfigServerApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigServerApplication.class, args);
}
}
和这些渐变依赖关系:
dependencies {
implementation('org.springframework.cloud:spring-cloud-config-server')
implementation('org.springframework.cloud:spring-cloud-starter-stream-rabbit')
implementation('org.springframework.cloud:spring-cloud-config-monitor')
testImplementation('org.springframework.boot:spring-boot-starter-test')
implementation('org.springframework.cloud:spring-cloud-stream-test-support')
}
服务具有此应用程序。yml:
---
server:
port: 8092
management:
security:
enabled: "false"
endpoints:
web:
exposure:
include:
- '*'
spring:
main:
banner-mode: "off"
rabbitmq:
host: localhost
port: 5672
username: guest
password: guest
此bootstrap.yml:
---
spring:
application:
name: employee-service
cloud:
config:
uri:
- http://localhost:8888
label: feature(_)initial-repo
这些渐变相关性:
dependencies {
implementation('org.springframework.boot:spring-boot-starter-web')
implementation('org.springframework.cloud:spring-cloud-starter-config')
implementation('org.springframework.cloud:spring-cloud-starter-bus-amqp')
implementation('org.springframework.boot:spring-boot-starter-actuator')
testImplementation('org.springframework.boot:spring-boot-starter-test')
}
这个主类:
@SpringBootApplication
public class EmployeeServiceApplication {
public static void main(String[] args) {
SpringApplication.run(EmployeeServiceApplication.class, args);
}
}
这个控制器类:
@RefreshScope
@RestController
public class WelcomeController {
@Value("${app.service-name}")
private String serviceName;
@Value("${app.shared.attribute}")
private String sharedAttribute;
@GetMapping("/service")
public String getServiceName() {
return "service name [" + this.serviceName + "]";
}
@GetMapping("/shared")
public String getSharedAttribute() {
return " application.yml [" + this.sharedAttribute + "]";
}
}
试着用Maven而不是Gradle来创建和构建你的项目。
我也遇到了同样的问题。我有两个相同的应用程序,具有相同的RabbitMQ依赖关系,一个是用Maven构建的,另一个是用Gradle构建的。基于Maven的应用程序像预期的那样向RabbitMQ发布内容。用Gradle构建的同一个应用程序没有建立到RabbitMQ的连接,也没有发布事件。为了进一步澄清,我用Spring工具在Eclipse中运行了这两个应用程序。
我使用的是Spring 2.0.1。使用spring云总线发布并安装所有项目(2个服务和云配置服务器) 配置服务器还具有spring云配置监视器 我在我的Git reposroty中编辑文件(使用具有Spring Cloud Config本机配置文件的本地文件)。检测到更改,我在Cloud Config Server中看到以下行: 但是,其他服务都不会收到有关更新密钥的通知。 另一方面,如果我手动
我一直在尝试掌握位于此处的spring boot config服务器:https://github.com/spring-cloud/spring-cloud-config在更彻底地阅读了文档之后,我能够解决我的大部分问题。然而,我不得不为基于文件的PropertySourceLocator编写一个额外的类 然后我将其添加到ConfigServiceBootstrapConfiguration.j
我正在使用Spring Cloud Config服务器,能够检测来自git存储库的更改并将其传递给配置客户机。 有两种方法,我已经实现了: null 所以两者都工作得很好,那么使用Spring Cloud Bus有什么好处吗?或者在生产环境中,不使用Spring Cloud Bus会有什么问题吗?因为将需要额外的工作来设置RabbitMQ集群(HA)作为生产中的Spring云总线。 谢谢,大卫
我连接RabbitMQ与斯普林云配置: 2.设置RabbitTemplate.set强制性(true)和setConfirmCallback(): 3.将消息发送到队列以调用发布者确认并打印日志。 但出版商确认没有工作。日志尚未打印。无论真假,日志都不应该缺席。
hprose 为发布服务提供了多个方法,这些方法可以随意组合,通过这种组合,你所发布的服务将不会局限于某一个函数,某一个方法,某一个对象,而是可以将不同的函数和方法随意重新组合成一个服务。 AddFunction 方法 AddFunction(name string, function interface{}, option ...Options) Service 该方法的用于发布一个函数(命名函
问题内容: 我已经安装了运行的ElasticSearch服务器: 如何配置Java客户端以连接到该服务器?我刚刚: 但是,尝试连接后,我收到了: 如果我将Java客户端配置为: 我收到以下日志: 据我了解,这意味着这个新节点(应该是客户端节点)使自己成为新的主节点。而且我不会从日志中找到它并连接到任何其他节点。 服务器和客户端都在同一台计算机上启动。192.168.1.106:9200可从浏览器访