1。微服务简介
1.1什么是微服务架构
- <李>微服务架构是系统架构上的一种设计风格李> <>李将大系统拆分成N个小型服务李> <李>这些小型服务都在各自的线程中运行李> <>李小服务间通过HTTP协议进行通信李> <>李有自己的数据存储,业务开发,自动化测试和独立部署机制李> <李>可以由不同语言编写李>
小结:微服务架构的思想,不只是停留在开发阶段,它贯穿了设计,研发,测试,发布,运维等各个软件生命周期。
引用>2。架构体系
架构样例:
2.1微服务发布——持续集成
3。微服务架构九大特性
<李>服务组件化
——组件是可独立更换,升级的单元。就像个人电脑中的内存,CPU一样。李> <李>按业务组织团队
——要求人员全栈技能李> <>李做“产品”的态度
,对整个产品生命周期负责,而不是做“项目”交付态度李> <李>智能端点与哑管道
——微服务间的通讯方式:
- - - HTTP的RESTful API
- - - MessageMQ消息队列<李>去中心化治理
李>
,不是每一个问题都是钉子,不是每一个解决方案都是锤子。李> <李>去中心化数据管理
——独立维护各服务数据存储,尽量使服务间“无事物”调用,通过补偿机制维护数据一致性问题李> <李>基础设施自动化
,自动化测试
,自动化部署李> <李>容错设计
,每个服务实现监控和日志组件,比如服务状态,断路器状态,吞吐量,网络数据等关键数据仪表盘李> <>李演进式设计
——初期单体,逐步拆分,抽取公共组件李>4。微服务选型
<李>
达博是阿里多年构建生产级分布式微服务的技术结晶,服务治理能力非常丰富,在国内技术社区具有很大影响力,目前github上有超过16 k星.Dubbo本质上是一套基于Java的RPC框架,当当Dubbox扩展了达博支持RESTful接口暴露能力。
李> <李>达博主要面向Java技术栈,跨语言支持不足是它的一个弱的项,另外因为治理能力太丰富,以至于这个框架比较重,完全用好这个框架的门槛比较高,但是如果你的企业基本上投资在Java技术栈上,选达博可以让你在服务框架一块站在较高的起点上,不管是性能还是企业级的服务治理能力,达博都做的很出色。
李> <李>新浪微博开源的Motan (github 4 k的恒星)也不错,功能和达博类似,可以认为是一个轻量裁剪版的达博。
5。春云介绍 李> <李>春云技术栈提供了分布式系统和微服务中所需要的约大多数公共模块和功能
李> <李>春云的出现,可以说是对微服务架构巨大的支持和强有力的后盾
李> <李>使用春天的云就像直接购买品牌机一样,在春社区的整合下,做了大量的兼容性测试,拥有更好的稳定性。李>
6。春云版本管理
http://projects.spring。io/spring-cloud/
引用>
7。春云组件
<李>微服务基础李> <李>微服务构建春启动李> <李>服务治理春云尤里卡李> <李>客户端负载均衡春云带李> <李>服务容错保护春云Hystrix李> <>李声明式服务调用春云假装李> <李> Api网关服务春云Zuul李> <>李分布式配置中心春云配置李> <李>消息总线弹簧云总线李> <李>消息驱动的微服务春云流李> <李>分布式服务跟踪春云侦探李>
春云的微服务是什么