微服务项目架构技术

一、基于SpringCloud构建微服务电商项目

1.Eureka作为注册中心,实现服务治理

2.管理统一服务入口管理 Zuul网关

3.Http协议 Fegin客户端、 Ribbon本地负载均衡

4.Hystrix服务保护框架(熔断、降级、隔离、限流)

5.微服务消息总线Stream RabbitMQ和Kafka

6.服务追踪与调用链关系sleuth、Zipkin

7.微服务安全控制SpringCloud Security

8.微服务SSO单点系统SpringCloud Oauth2.0+Jwt+Cas

9.微服务Api管理Swagger

二、分布式基础设施

1.分布式任务调度平台XXL-JOB

2.分布式日志分析 ELK

3.分布式事务解决方案LCN

4.分布式锁解决方案 Zookeeper 、Redis

5.分布式配置中心携程阿波罗

6.静态资源服务器

7.分布式全局ID生成

8.分布式Session一致性Spring - Session

三、数据库技术

1.数据库Mysql+Mycat

2.分表分库插件Shardingjdbc

3.Redis与数据库同步框架 canal

四、项目部署与运营

1.网站采用动静分离CDN内容分发

2.使用Git版本控制

3.Jenkins+Docker自动部署

4.使用Nginx+keepalived实现高可用

其他 

微服务SpringCloud 和Dubbo(阿里巴巴开源服务治理框架)

Dubbo只是实现了服务治理,而Spring Cloud下面有17个子项目(可能还会新增)分别覆盖了微服务架构下的方方面面,服务治理只是其中的一个方面,一定程度来说,Dubbo只是Spring Cloud Netflix中的一个子集。

看看Spring Cloud和Dubbo都提供的支持

  Dubbo Spring Cloud
服务注册中心 Zookeeper Spring Cloud Netflix Eureka
服务调用方式 RPC REST API
服务网关 Spring Cloud Netflix Zuul
断路器 不完善 Spring Cloud Netflix Hystrix
分布式配置 Spring Cloud Config
服务跟踪 Spring Cloud Sleuth
消息总线 Spring Cloud Bus
数据流 Spring Cloud Stream
批量任务 Spring Cloud Task
…… …… ……

分布式解决方案 SpringCloud config、阿波罗(推荐使用)、Elastic job

猜你喜欢

转载自blog.csdn.net/HrlSnow/article/details/84564849