其他分享
首页 > 其他分享> > 高并发系统设计:为什么要做服务化拆分

高并发系统设计:为什么要做服务化拆分

作者:互联网

为什么要做服务化拆分

一体化架构的痛点

在这里插入图片描述

所谓“一体化架构”就是说所有的功能模块,都被打包到一个web工程中,然后部署到应用服务器上。这种架构的优点如下:

但是随着系统规模变大,以缺陷会慢慢体现处理,比如:

而我说的这些问题,都可以通过微服务化拆分来解决。

如何使用微服务化解决这些痛点

比如说有一个系统,采用的是一体化架构,数据库也做了垂直拆分,分出了用户库、内容库和互动库,并且已经将工程拆分了业务池,拆分成了用户池、内容池和互动池。

问题:当前端的请求量越来越大时,无论哪个业务池子,用户模块都是请求量最大的模块,用户库也是请求量最大的数据库。因为无论是内容还是互动,都会查询用户库获取用户数据。也就是说,即使我们做了业务池的拆分,但实际上,每一个业务池子都需要连接用户库,并且请求量很大,这就造成了用户库的连接数比其他都要多一些,容易成为系统的瓶颈。

在这里插入图片描述
那我们应该怎么解决这个问题呢?

在这里插入图片描述

微服务化后,系统架构要如何改造

在这里插入图片描述
在这个架构中,我们将订单、用户、商品相关的逻辑,抽取成服务独立的部署,原本的web工程和队列处理程序,将不再直接依赖缓存和数据库,而是通过调用服务接口,查询存储中的信息。

也就是说做了服务拆分。但是具体应该怎样拆分呢?比如:

在这里插入图片描述

微服务拆分的原则

标签:架构,服务化,数据库,连接数,并发,拆分,服务,用户库
来源: https://blog.csdn.net/zhizhengguan/article/details/121246013