分布式系统架构与通信基础全解析
1. 分布式系统架构概述
在构建可扩展系统时,可将其视为由通信服务和分布式数据库组成的集合。这里涉及到多种主要方法,但很多细节暂未深入探讨。在软件系统中,细节往往决定成败。
在架构方面,使用“服务”来表示实现应用业务逻辑和数据库访问的分布式组件。这些服务是独立部署的进程,通过远程通信机制(如 HTTP)进行通信。从架构角度看,它们与面向服务架构(SOA)模式中的服务最为相似,SOA 是构建分布式系统的成熟架构方法。而其更现代的演进则围绕微服务展开,微服务通常是更具内聚性和封装性的服务,有助于持续开发和部署。
此外,还有一类大数据软件架构,可解决大规模数据集合带来的一些问题,其中数据重新处理是较为突出的问题。当已存储和分析的数据因代码或业务规则变更而需要重新分析时,就会发生数据重新处理。这可能是由于软件修复,或者引入了能从原始数据中挖掘更多信息的新算法。
2. 分布式系统基础
分布式系统的扩展自然需要添加多个独立运行的部分。软件组件会在多台机器上运行,数据库也会分布在多个存储节点上,目的是增加处理能力。因此,解决方案会分布在多个地点的多台机器上,每台机器并发处理事件,并通过网络交换消息。这种分布式系统的基本特性对解决方案的设计、构建和运营方式有着深远影响。
3. 通信基础
分布式系统中的软件组件通过网络进行通信。以移动银行应用请求用户当前银行账户余额为例,通信流程大致如下:
1. 移动银行应用通过蜂窝网络向银行发送请求,以获取用户的银行余额。
2. 请求通过互联网路由到银行的 Web 服务器所在位置。
3. 银行的 Web 服务器对请
超级会员免费看
订阅专栏 解锁全文

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



