【微服务】理解与SpringCloud

由于之前在软件公司中接触的都是一些单体应用项目;作为一个优秀的软件工程师得抱着一颗学习的心态,打算研究一下最近几年架构中比较主流的微服务;

理解:
微服务是一种架构风格,把单一的应用系统拆分成多个独立的微小型服务,各个服务之间解耦合,每个服务可单独部署运行;相当于公司中的各个部门。

常见的微服务架构有dubbo和springcloud;dubbo属于RPC架构,而springcloud是微服务采用http Rest风格;
Dubbo和SpringCloud区别

一、微服务技术栈

微服务条目 落地技术
服务开发 Springboot、Spring、SpringMVC
服务配置与管理 Netflix公司的Archaius、阿里的Diamond等
服务注册与发现 Eureka、Consul、Zookeeper等
服务调用 Rest、RPC、gRPC
服务熔断器 Hystrix、Envoy等
负载均衡 Ribbon、Nginx等
服务接口调用(客户端调用服务的简化工具) Feign等
消息队列 Kafka、RabbitMQ、ActiveMQ等
服务配置中心管理 SpringCloudConfig、Chef等
服务路由 (API网关) Zuul等
服务监控 Zabbix、Nagios、Metrics、Spectator等
全链路追踪 Zipkin,Brave、Dapper等
服务部署 Docker、OpenStack、Kubernetes等
数据流操作开发包 SpringCloud Stream(封装与Redis,Rabbit、Kafka等发送接收消息)
事件消息总线 Spring Cloud Bus

二、微服务 马丁.福勒博客介绍
微服务博客介绍
【微服务】理解与SpringCloud