微服务拆分
微服务最好进行文件夹拆分,程序集拆分会让系统变得更复杂
文件夹拆分主要包含
- Repository
- Models
- Services
- Controller
微服务join
分开查询微服务性能较低,可考虑mysql主从复制
聚合服务层
聚合服务为每个微服务添加 ServiceClient 接口,方便调用
注册中心
保证微服务的动态伸缩性
成熟框架:
- zookeeper
- consul
- etcd
- eureka
加入健康检查 可以即时健康有效服务地址,
当健康检查失败时,consul主动移除该服务节点
当处于服务调用和健康检查失败之间时机时,可以使用熔断降级保证系统正常
注册中心高可用
consul集群搭建
集群必须服务模式启动
配置文件 端口都设置不一样
consul 负载均衡
consul 数据一致性Raft算法 选举leader
nginx
docker k8s
Raft 算法应用于对称集群 ,