Spring Cloud实现对比
Spring Cloud 作为一套标准,实现不一样
Spring Cloud Alibaba | Spring Cloud Netflix | Spring Cloud 官方 | Spring Cloud Zookeeper | |
分布式配置 | Nacos Confic | Archaius | Spring Cloud Config | Zookeeper |
服务注册/发现 | Nacos Discovery | Eureka | -- | Zookeeper |
服务熔断 | Sentinel | Hystrix | -- | |
服务调用 | Dubbo RPC | Feign | OpenFeign RestTemplate | |
服务路由 | Dubbo + Servlet | Zuul | Spring Cloud Gateway | |
分布式消息 | SCS RocketMQ Binder | -- | SCS RabbitMQ Binder | |
消息总线 | RocketMQ Bus | -- | RabbitMQ Bus | |
负载均衡 | Dubbo LoadBalance | Ribbon | ||
分布式事务 | Seata | -- | ||
Sidecar | Spring Cloud Alibaba Sidecar | Spring Cloud Netflix Sidecar |
1.2.2 常见微服务架构
1. dubbo: (zookeeper +dubbo)(仅能实现治理中心) + SpringMVC/SpringBoot
配套 通信方式: rpc
注册中心: zookeeper/redis
配置中心: diamond
2.SpringCloud: 全家桶+轻松入第三方组件(Netflix)[已闭源,建议不使用]
配套 通信方式: http restful
注册中心: eruka /consul
配置中心: config
断 路器: hystrix
网关: zuul
分布式追踪系统: sleuth + zipkin
微服务常见问题:
1.如何管理:(服务治理,注册中心)nacos
2.如何通讯:(restful rpc dubbo feign)单服务 httpclient("url",参数) springboot resttemplate("url",参数) springcloud feign
3.客户端怎么访问:网关(gatway)
4.单服务出问题怎么处理:(容错)熔断降级:sentinel
5.一旦出现问题,如何进行排错(链路追踪)skywoking
应用平均一年宕机时间52分钟,
spring cloud项目创建
父maven项目主要作用:仅用来聚合子maven项目,因此仅选择pom类型