一、微信公众号:
https://mp.weixin.qq.com/mp/homepage?__biz=MzAwNTQ4MTQ4NQ==&hid=4&sn=305c0d3c23799fb9fa0cf125cd27f9fd&scene=18&devicetype=android-25&version=26051036&lang=zh_CN&nettype=WIFI&ascene=7&session_us=gh_674a733c627a&pass_ticket=BUk4S3LyHnNUMPPTHR9N0JBkaSwKt1BMeuGeyVoe0%2FF9OxvZeubRyLBICd4REX8W&wx_header=1&scene=1
微服务系列(一):微服务架构中职能团队的划分
微服务架构按照业务的功能进行划分,每个单一的业务功能叫作一个服务,每个服务对应一个独立的职能团队,团队里包含用户交互UI设计师、后台服务开发人员、DBA、运营和运维人员。
微服务系列(二):微服务的去中心化治理
实践:Thrift远程调用框架使用中间语言(IDL)来定义接口,中间语言是独立于任何语言的,并提供了工具来生成中间语言,以及在中间语言与具体语言之间的代码转换。第1层SOA服务化采用Dubbo框架进行定制化,如果Dubbo服务化出现了大面积的崩溃,则服务化体系会切换到点对点的hessian远程调用,这被称为服务化降级,降级后点对点的hessian远程调用时没有中心化节点。
微服务系列(三):微服务的分解和组合模式
服务代理模式、服务聚合模式、服务串联模式、服务分支模式、服务异步消息模式、服务共享数据模式
微服务系列(四):微服务的交互模式
接口契约、数据存储契约
读者容错模式、消费者驱动契约模式、去数据共享模式
微服务系列(五):微服务的容错模式
舱壁隔离模式【微服务容器分组、线程池隔离】、 熔断模式、限流模式【计数器、令牌筒、信号量】、失效转移模式
微服务系列(六):微服务的粒度
实践:拆分的粒度太细和太粗都是不合理的,根据业务需要,能够满足上层服务对底层服务自由编排并获得更多的业务功能即可,并需要适合团队的建设和布局。
微服务系列(七):服务化管理和治理框架的技术选型
RPC:JDKRMI、Hessian及Burlap、Spring HTTP Invoker
服务化:Dubbo、HSF、Thrift、AXIS、Mule ESB
微服务:Spring Boot、Netflix、Spring Cloud Netflix
Spring Boot
可以创建独立、自启动的应用程序。
不需要构建War包并发布到容器中,构建和维护War包、容器的配置和管理也是需要成本的。
通过Maven的定制化标签,可以快速创建Spring Boot的应用程序。
可以最大化地自动化配置Spring,而不需要人工配置各项参数。
提供了产品化特点,例如:性能分析、健康检查和外部化配置。
全程没有XML配置,也不需要代码生成。
Spring Cloud Netflix
服务在Eureka实例中注册,由Spring管理的Bean来发现和调用。
通过配置的方式可以启动嵌入式的Eureka服务器。
Feign客户端通过声明的方式即可导入服务代理。
Zuul使用Ribbon服务实现客户端的负载均衡。
通过声明的方式即可插入Hystrix的客户端。
通过配置的方式即可启动Hystrix面板服务器。
在Spring环境中可以直接配置Netflix的组件。
Zuul可以自动注册过滤器和路由器,形成一个反向代理服务器。
Hystrix面板可以对服务的状态进行监控,并提供了容错机制。
二、博客:
http://blog.csdn.net/kenkao/article/details/54171437
微服务实战(一):微服务架构的优势与不足
微服务实战(二):使用API Gateway【Facade模式】
微服务实战(三):深入微服务架构的进程间通信
微服务实战(四):服务发现的可行方案以及实践案例
微服务实践(五):微服务的事件驱动数据管理
微服务实践(六):选择微服务部署策略
微服务实践(七):从单体式架构迁移到微服务架构
三、书籍:
分布式服务架构:原理、设计与实战
微服务架构与实践
JavaEE开发的颠覆者:Spring Boot实战
Spring Cloud微服务实战
Spring Cloud与Docker微服务架构实战