单机结构

我想大家最熟悉的就是单机结构了。 当一个系统的业务量较小时,可以将所有代码放在一个项目中,然后将项目部署在一台服务器上。 整个项目的所有服务都由这台服务器提供。 这是一个独立的结构。

那么,单机结构的缺点是什么? 我觉得缺点很明显。 毕竟单机的处理能力是有限的。 当您的业务增长到一定程度时,单机硬件资源将无法满足您的业务需求。 此时出现集群模式,继续往下看。

集群结构

在程序员的世界里,对于集群模式的解释有很多种,其中有些是你无法理解的。 事实上,这是一件非常简单的事情。 让我一一解释。

当单机处理遇到瓶颈时,你复制几台单机形成一个“集群”。 集群中的每台服务器称为集群的一个“节点”,所有节点组成一个集群。 每个节点提供相同的服务,因此系统的处理能力相当于高出数倍(几个节点相当于高出数倍)。 但问题是哪个节点处理用户的请求? 最好让此时负载较小的节点来处理,这样每个节点的压力更均匀。 为了实现这个功能,需要在所有节点之前添加一个“调度器”角色。 用户的所有请求首先交给它,然后它根据所有节点的当前负载决定将请求发送到哪个节点。 这个“调度器”有一个很酷的名字——负载平衡服务器。 集群结构的优点是易于扩展系统。 如果当前的系统已经不能支持你的系统业务的发展,你可以在集群中增加更多的节点。 但是,当你的业务发展到一定程度的时候,你会发现一个问题——不管怎么加节点,看起来整个集群的性能提升效果都不明显。 这就是微服务结构发挥作用的地方。

分布式结构

我们先总结一下前面的知识点。

从单机结构到集群结构,你的代码基本不需要修改。 您需要做的就是部署更多服务器并在每台服务器上运行相同的代码。 但是,当你想从集群结构演进到微服务结构时,就需要对之前的一组代码进行大修。 所以对于新系统,我们建议在系统设计之初就采用微服务架构,这样后期的运维成本会更低。 但如果旧系统需要升级为微服务结构,代码上会花很多功夫。 因此,对于老系统,是继续保持集群模式还是升级到微服务架构,需要你的架构师仔细考虑和权衡投入产出比。

OK,我们先从所谓的分布式结构说起。 分布式结构就是将一个完整的系统按照业务功能拆分成独立的子系统。 在分布式架构中,每个子系统都称为“服务”。 这些子系统可以在 Web 容器中独立运行,并通过 RPC 相互通信。 例如,假设您需要开发一个在线商店。 按照微服务的思想,我们需要按照功能模块拆分成多个独立的服务,比如:用户服务、产品服务、订单服务、后台管理服务、数据分析服务等等。 这些服务中的每一个都是可以独立运行的独立项目。 如果服务之间存在依赖关系,则通过 RPC 调用。 这样做有很多好处:系统之间的耦合度大大降低,可以独立开发、独立部署、独立测试,系统之间的界限非常清晰,故障排除也相当容易,大大提高了开发效率。 减少了系统之间的耦合,使系统更易于扩展。 我们可以有针对性地扩展某些服务。 假设商场要举行大甩卖,订单数量可能会大幅增加。 因此,我们可以有针对性地增加订单系统和产品系统中的节点数量。 对于后台管理系统和数据分析系统,节点数保持不变。 年级。 服务更可重用。 例如,当我们将用户系统作为单独的服务使用时,公司所有产品都可以将该系统作为用户系统使用,无需重复开发。

原文来自邦阅网 (52by.com) - www.52by.com/article/95329

声明:该文观点仅代表作者本人,邦阅网系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系邦阅网或作者进行删除。

评论
登录 后参与评论
发表你的高见