微服务概述
微服务是系统架构的一种设计风格,主旨是将一个原本独立的系统拆分成多个小型系统,这些系统在各自独立的进程中运行,服务间通过HTTP的RESTful API进行通信协作。被拆分成的每个小型服务都围绕系统中某一项或一些耦合性较高的业务功能进行构建,每个服务都维护着自身的数据存储、业务开发、自动化测试案例以及独立部署机制。
与单体系统的区别:
-
微服务系统易于扩展,对于新的业务可方便接入到现有系统中;
-
解决单体系统的臃肿庞大难以维护,将系统按业务功能模块拆分成多个微服务,每个微服务专注于解决对应业务领域问题,更易于维护;
-
每个服务运行在自己的进程内,在部署上有稳固的部署边界,每个服务的部署更新不影响其它服务的运行;
-
系统按功能模块拆分成多个微服务,数据库也将根据业务进行拆分,使得单个微服务数据库表、数据量得到控制;
引入的问题:
-
跨服务调用,增加时间开销
-
分布式事务一致性问题引入,给系统带来灾难性影响
-
幂等性问题引入
-
分库分表带来性能上的影响
本文介绍了微服务,它是一种系统架构设计风格,将独立系统拆分成多个小型系统,各服务独立运行并通过RESTful API通信。与单体系统相比,微服务易于扩展、维护,部署边界稳固,能控制数据库规模。但也引入了跨服务调用开销、分布式事务一致性等问题。
627

被折叠的 条评论
为什么被折叠?



