springcloud alibaba是由阿里巴巴开发的新一代微服务架构解决方案,方便微服务的管理。
微服务优点:方便扩展,灵活管理,简化部署,相互影响小可靠性高
缺点: 复杂度高,运维及人力成本高,可能影响整个系统性能
一.组件介绍
负载均衡
前段基于nginx负载均衡策略并进行域名解析,后台服务之间基于ribbon。
分布式配置
nacos 分布式系统的外部配置管理,配置中心可视化、分环境配置控制。配置动态更新能力。
服务注册与发现
nacos 适配SpringCloud标准的服务注册与服务发现管理。
服务限流与降级
sentinel 可通过控制台进行实时的修改限流 降级 熔断的规则,实时的Metrics监控。支持多种协议。
消息驱动
基于RocketMQ实现消息驱动的业务场景开发。
分布式事物
开源Seata使用@GlobalTransactional注解,零侵入的实现分布式事物的支持。
调用方式
RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法exchange 以及 execute。RestTemplate 继承自 InterceptingHttpAccessor 并且实现了 RestOperations 接口,其中 RestOperations 接口定义了基本的 RESTful操作。通过服务注册名调用自动启用ribbon负载均衡策略进行分发请求。
二.架构图
三.服务搭建
主要介绍五大组件( 监测组件sentinel,配置 注册组件nacos,负载ribbon,网关getway)使用。
demo我已经上传在我的资料里,需要的朋友可以下载研究学习。
四:springcloudalibab和springcloud比较
springcloudalibaba | springcloud | |
网关 | getway | zuul |
注册中心 | nacos | eureka |
配置中心 | nacos | Spring Cloud Config |
负载均衡 | ribbon | ribbon |
调用方式 | RestTemplate或者feign | feign |
监控以及降级限流 | sentinel | Hystrix |