一、微服务概述
目前业界没有统一标准的定义,通常而言,微服务架构是一种架构模式或一种架构风格,提倡将单一应用程序划分成一组小的服务,每个服务运行在其独立的自己的进程中。服务之间采用轻量级的通信机制进行沟通(本质区别,cloud基于HTTP的RESTful API,dubbo基于RPC),每个服务独立部署发布,可以用不同语言编写服务。
微服务强调的是服务的大小,一个个的个体,一个服务应用
技术纬度理解:微服务核心就是将传统一站式应用根据业务拆分成一个个的服务,彻底去耦合,一个微服务提供单个业务功能的服务且只做一件事(如发短信,下订单),小而独立的处理过程,类似进程,
分布式:专业的事交给专业的人做,尽量降低耦合度
微服务技术栈:
| 条目 | 技术 | 
|---|---|
| 服务开发 | Springboot、Spring、SpringMVC | 
| 服务配置与管理 | Netflix公司的Archaius、阿里的Diamond | 
| 服务注册与发现 | EureKa、Consul、Zookeeper | 
| 服务调用 | Rpc、Rest、gRpc | 
| 服务熔断器 | Hhystrix、Envoy | 
| 负载均衡 | Ribbon、Nginx | 
| 服务接口调用 | Feign | 
| 消息队列 | Kafka、RabbitMQ、ActiveMQ | 
| 服务配置中心管理 | SpringCloudConfig、Chef | 
| 服务路由(API网关) | Zuul | 
| 服务监控 | Zabbix、Nagions、Metrics | 
| 全链路追踪 | Zipkin、Brave | 
| 服务部署 | Docker、OpenStack | 
| 数据流操作开发包 | SpringCloud Stream | 
| 事件消息总栈 | SpringCloud Sus | 
| …. | 
二、SpringCloud
微服务全家桶,基于springboot提供了一套微服务解决方案,各个微服务架构落地技术的集合体。
区别:springboot专注于快速方便开发单个微服务个体,springcloud依赖于springboot,关注全局服务治理框架
与dubbo区别:

最大区别:cloud抛弃了dubbo的rpc通信,采用基于http的rest方式,功能区别,社区支持和更新力度区别。
    本文作者:
    
      secret
    
    
本文链接: http://wecret.github.io/2019/10/24/1/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!
      
        
      
    本文链接: http://wecret.github.io/2019/10/24/1/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!
 
		 
                      