微服务
一,微服务定义及粒度
微服务是一种架构模式,提倡将单一应用程序划分成一组小的服务,服务之间相互协调,互相配合,为用户提供终的价值。
微服务的粒度
微服务到底多微是一个不确定问题,重要是团队觉得合适。划分粒度的标准是服务之间业务相互独立,每个团队能够自主的开发一个服务。
二,微服务与SOA
微服务架构并不是一个全新的概念,与SOA概念几乎一致。
SOA实现
1,企业级,自顶向下开展实施;
2,服务由多个子系统组成,粒度较大;
3,企业服务总线,是集中式服务架构;
4,集成方式复杂(ESB/WS/SOAP);
5,单体架构,相互依赖,部署复杂。
微服务实现
1,团队级,自底向上开展实施;
2,拆分成多个服务,粒度小;
3,无集中式总线,松散的服务架构;
4,集成方式简单(HTTP,REST,JSON);
5,服务能够独立部署
三,微服务的本质
微服务的本质特征包括以下几个方面:
1,服务作为组件。松散的服务方式,构建可独立化部署的服务。但是分布式调用比进程内调用更加耗时,依赖网络可靠和稳定。
2,围绕业务组织团队,不根据技能划分。
3,关注产品而非项目。从服务分析,开发,测试,部署,运维。个人目标和团队目标时刻保持一致。
4,技术多样性,基础实施自动化,业务数据独立,演进式架构。
相关文章