首页 > 编程知识 正文

j1939通讯协议中文版,can-bus总线指的是

时间:2023-05-04 05:18:09 阅读:8959 作者:1173

一、能干吗?

二、什么是公共汽车?

三.动态更新全球广播

注意:首先必须具备良好的RabbitMQ环境

展现广播效果,增加复杂度,以3355为模板再制作一个3366

1、全新云配置客户端- 3366

1 )销售订单

cloud2020

com.atguigu.springcloud

1.0-快照

4.0.0

云配置客户端- 3366

8

8

org.springframework.cloud

spring-cloud-starter-config

org.springframework.cloud

spring-cloud-starter-Netflix-eureka-client

com.atguigu.springcloud

云API公共

${project.version}

org.spring帧work.boot

spring-boot-starter-web

org.spring帧work.boot

spring-boot-starter-actuator

org.spring帧work.boot

spring-boot-devtools

运行时间

真的

org.projectlombok

lombok

真的

org.spring帧work.boot

spring-boot-starter-test

测试

pom文件

2 ) YML

服务器:

port: 3366

spring:

3: APP

name :配置客户端

cloud:

config:

Label:大师

name: config

简档: dev

uri :http://localhost :3344

eureka:

客户端:

服务-URL:

efault zone :3358 eureka 7001.com :7001/eureka,http://eureka 7002.com :7002/eureka

管理:

endpoints:

web:

exposure:

include: '* '

3 )主启动

@EnableEurekaClient

@ springbootapplicationpublicclassconfigclientmain 3366 { publicstaticvoidmain { string [ ] args } }

spring application.run (configclientmain 3366.class,args );

}

}

4 )控制器

@ rest控制器

@ refreshscopepublicclassconfigclientcontroller {

@value((${server.port} )专用服务器端口;

@value((${config.info} )私有配置信息;

@getmapping(/configinfo ) ) publicString getConfigInfo ) ) return ' server port : ' server port 'tnnconfig

}

}

2、设计思想

1 )使用消息总线启动一个客户端/bus/refresh以更新所有客户端的配置

2 )通过消息总线触发单个服务端ConfigServer的/bus/refresh端点,更新所有客户端的配置(更推荐) () ) ) ) ) )。

图2的框架显然更合适,图1不合适的理由如下

打破了微服务职责的单一性。 微服务本身是一个业务模块,因此不应该承担配置创新的责任

p>破坏了微服务各节点的对等性

有一定的局限性。例如,微服务在迁移时,它的网络地址常常会发生变化,此时如果想要做到自动刷新,那就会增加更多的修改

3、代码改造

1)给cloud-config-center-3344配置中心服务端添加消息总线支持

POM

org.springframework.cloud

spring-cloud-starter-bus-amqp

增加mq依赖

YML

server:

port:3344spring:

application:

name: cloud-config-center

cloud:

config:

server:

git:

uri: https://github.com/jwen1994/sprincloud-config.git

search-paths:- springcloud-config

username:526464869@qq.com

password: wj_870096

label: master

rabbitmq:

host:192.168.216.130

port: 5672username: admin

password: password

eureka:

client:

service-url:

defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka

management:

endpoints:

web:

exposure:

include: "bus-refresh"

2)给cloud-config-center-3355客户端添加消息总线支持

POM

org.springframework.cloud

spring-cloud-starter-bus-amqp

增加mq依赖

YML

server:

port:3355spring:

application:

name: config-client

cloud:

config:

label: master

name: config

profile: dev

uri: http://localhost:3344

rabbitmq:

host: 192.168.216.130

port: 5672username: admin

password: password

eureka:

client:

service-url:

defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka

management:

endpoints:

web:

exposure:

include:"*"

3)给cloud-config-center-3366客户端添加消息总线支持

POM

org.springframework.cloud

spring-cloud-starter-bus-amqp

增加mq依赖

YML

server:

port:3366spring:

application:

name: config-client

cloud:

config:

label: master

name: config

profile: dev

uri: http://localhost:3344

rabbitmq:

host:192.168.216.130port:5672username: admin

password: password

eureka:

client:

service-url:

defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka

management:

endpoints:

web:

exposure:

include:"*"

4、测试

修改Github上配置文件增加版本号

curl -X POST "http://localhost:3344/actuator/bus-refresh"

一次发送,处处生效

四、动态刷新定点通知

不想全部通知,只想定点通知

只通知3355

不通知3366

公式:http://配置中心IP地址/actuator/bus-refresh/{destination}

/bus/refresh请求不再发送到具体的服务实例上,而是发给config server并通过destination参数类指定需要更新配置的服务或实例

我们这里以刷新运行在3355端口上的config-client为例

curl -X POST "http://localhost:3344/actuator/bus-refresh/config-client:3355"

五、总结

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。