02.微服务技术栈

微服务技术栈:多种技术的集合

一个分布式的微服务架构

  • 服务治理
  • 服务注册
  • 服务调用
  • 服务负载均衡
  • 服务监控
  • ........
微服务条目 落地技术 备注
服务开发 SpringBoot、Spring、SpringMvc  
服务配置与管理 Netflix公司的Archaius、阿里的Diamond等  
服务注册与发现 Eureka、Consul、Zookeeper等  
服务调用 Rest、RPC、gRPC  
服务熔断器 Hystrix、Envoy等  
服务接口调用(客户端调用服务的工具) Feign等  
消息队列 Kafka、Rabbit MQ、ActiveMQ  
服务配置中心管理 SpringCloudConfig、Chef等  
服务路由(API网关) Zuul等  
服务监控 Zabbix、Nagios、Metrics、Spectator等  
全链路追踪 Zipkin、Brave、Dapper等  
数据流开发操作包 SpringCloudStream(封装Redis、Rabbit、Kafka等发送接受消息)  
事件消息总线 SpringCloudBus  
.................    

 

 

 

 

 

 

 

 

 

 

 

为什么选择SpringCloud作为微服务架构:

选型依据:

整体解决方案和框架的成熟度 

社区热度

可维护性

学习成本

现在互联网公司的微服务架构有哪些?

阿里云         dubbo/HSF

京东             JSF

新浪             motan

当当             dubbox

各种微服务框架的对比

02.微服务技术栈

SpringCloud和Springboot是什么关系?

Springboot专注于快速方便的开发单个个体微服务

Springcloud是关注全局的微服务协调整理治理框架,将SpringBoot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供提供配置管理、服务发现、熔断器、路由器、微代理、事件总线、全局锁、决策竞选、分布式会话等等集成服务

SpringBoot可以离开SpringCloud独立开发项目,但是Spring Cloud离不开Springboot,属于依赖关系

SpringBoot专注快速,方便的开发单个微服务个体,SpringCloud关注全局的服务治理框架