
2、同事A启动User服务,同事B也在本地启动User服务。那么两个服务都注册到Nacos上,前端同事调试访问A的User服务,很容易出现访问到同事B启动的User服务(导致开发混乱,无法debug到自己的服务),还要考虑到如果有同事在本地debug服务,也会影响到别的同事。
1、在公共机器上启动Nacos服务,MySQL,Redis等公共服务,共同使用即可减少本地开销
2、同事A,同事B,都在本地启动Gateway服务,使用公共机器的Nacos服务(例如10218126:8848)本地 gateway的配置一定要配置ribbon 。因为负载均衡,会导致同事A想要访问自己本地启动的User服务,却访问到了同事B启动的User服务,又或者服务器上的User服务(这样无法开发)所以一定要做一些规则,负载均衡本地优先的规则。
效果: 只需要本地启动gateway和User服务。由于给gateway里的ribbon配置了优先本地,会先去调用本地的User服务,而不是公共机器或者其他同事的。(就算Feign调用,也是走网关,只要走了本地的网关,就是优先本地)
原理:
Gateway要获取Nacos下发的ip地址和服务名,做动态路由。
Gateway要集成ribbon,做负载均衡。
ribbon还得配置本地优先策略,以免服务冲突。
ip地址要在同一网段,否则无法通讯。SpringCloud是基于SpringBoot基础之上开发的微服务框架,SpringCloud是一套目前非常完整的微服务解决方案框架,其内容包含服务治理、注册中心、配置管理、断路器、智能路由、微代理、控制总线、全局锁、分布式会话等。
SpringCloud包含众多的子项目
SpringCloud config 分布式配置中心
SpringCloud netflix 核心组件:
Eureka:服务治理 注册中心
Hystrix:服务保护框架
Ribbon:客户端负载均衡器
Feign:基于ribbon和hystrix的声明式服务调用组件
Zuul: 网关组件,提供智能路由、访问过滤等功能。
上海每特教育科技有限公司|苏州特每信息科技有限公司版权所有
SpringCloud中文翻译: >1、springcloud nacos gateway openfign Resilience4J 测试网关熔断,feign重试机制,服务的熔断机制,实例的feign熔断机制
2、springcloud 体系监控,基于 actuator prometheus grafana
3、springcloudStreamRocketmq事件驱动机制测试 延迟队列,死信队列
4、接口文档采用springdoc来编写,将其中的枚举等自定义序列化风格
5、es集群测试
具体源码地址: >
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)