当前位置: 首页 > 科技观察

微服务和分布式有什么联系和区别?

时间:2023-03-19 14:16:34 科技观察

微服务和分布式有什么联系和区别?分布式只是一种手段,将不同的机器分散在不同的地方,然后这些机器相互协助完成业务,而微服务就是一种特殊的分布式。分布式将一个大系统划分为多个业务模块,业务模块部署在不同的机器上,各业务模块之间通过接口进行数据交互。微服务和分布式的细微差别在于,微服务的应用不一定分散在多台服务器上,也可以是同一台服务器。1、什么是微服务?微服务架构是团队面对互联网产品爆发式增长的最佳选择。解决快速迭代、高可靠、高可用等问题,将高度复杂的产品拆分成更小的产品。模块,并遵循康威定律,每个模块由5-9个小团队维护,降低沟通成本,提高协作效率,更好地实现快速迭代和弹性扩展。微服务架构的改造引入了各种复杂性,例如部署工作量的增加、复杂链路的监控问题等。为微服务而微服务只会得不偿失。在实现过程中,我们不能简单地使用某些微服务框架或组件来一蹴而就。而是需要将业务、技术、运维有机结合起来,配合同步实施,过程中需要经历很多坑。成功。复杂的业务拆分不一定一步到位,因为每个复杂的业务不一定只拆分成一个组成部分,一个庞大的业务拆分成相对独立的庞大业务,但如果业务小而多,而且类型您也可以放心拆分。2、什么是分布式?对于分布式架构,根据设计时期的架构思想和运行时期的不同结构,可以分为面向服务架构、分布式服务架构和微服务架构。1、面向服务的架构:从业务服务和服务总线(通常是WebService和ESB)的角度考虑系统架构和企业IT治理;2、分布式服务架构:基于去中心化的分布式服务框架和技术,考虑系统架构和服务治理;3.微服务架构:微服务架构可以看作是面向服务架构和分布式服务架构的扩展,使用更细粒度的服务和一套设计指南来考虑大规模复杂系统的架构设计。传统企业集成领域的EAI架构模型仍然是各个系统独立部署,但系统之间的一些服务是通过特定的技术连接起来的,因此可以看作是单体和分布式之间的过渡状态。3、分布式服务架构和微服务架构的概念有什么联系和区别?分散:分散压力。微服务:去中心化的能力。分布式:不同的模块部署在不同的服务器上;功能:分布式,解决网站高并发带来的问题;集群:同一个服务;多台服务器部署同一个应用,形成集群;功能:通过负载均衡设备对外提供服务;SOA【组装服务/ESB企业服务总线】;将业务系统分解为多个组件,使每个组件能够独立提供离散、自治、可复用的服务能力;通过服务组合和编排实现上层业务流程;作用:简化维护,降低整体风险,灵活扩展;微服务【查找服务/微服务网关开放API】;架构设计理念,服务之间隔离(分布式也是隔离)、自治(分布式依赖整体组合)等特性(单一职责、边界、异步通信、独立部署)是分布式理念的严格贯彻;从SOA到微服务架构的演进过程;功能:各服务可独立应用,组合服务也可系统应用。总结:分布式是一种工作方式,微服务是一种架构风格。它们都是在同一个大系统中分别部署不同的子模块。实现了低耦合,提高并发,提高了系统水平扩展的能力。同时,它们与其他模块的通信也是基于rpc进行通信调用。微服务是一个独立的服务,包含了一个服务从控制层到业务层再到持久层应有的一切。它必须有前端代码。也可以自己提供,微服务持久层的数据库是私有的,不会与其他服务共享。而分布式可以只有控制层和业务层,不需要自己的数据库和前端,可以和其他模块共享一个数据库。