02.分布式系统概念
约 496 字大约 2 分钟...
SOA:基于服务的架构思想
- 开发、维护和使用 SOA 要遵循以下几条基本原则: ( 可重用,粒度合适,模块化,可组合,构件化以及有互操作性。
- 符合开放标准(通用的或行业的)。服务的识别和分类,提供和发布,监控和跟踪。
使用分布式系统主要有两方面原因:
增大系统容量
* 我们的业务量越来越大,而要能应对越来越大的业务量,一台机器的性能已经无法满足了,我们需要多台机器才能应对大规模的应用场景。所以,我们需要垂直或是水平拆分业务系统,让其变成一个分布式的架构。
加强系统可用
* 我们的业务越来越关键,需要提高整个系统架构的可用性,这就意味着架构中不能存在单点故障。这样,整个系统不会因为一台机器出故障而导致整体不可用。所以,需要通过分布式架构来冗余系统以消除单点故障,从而提高系统的可用性。
与单体的优缺点比较

缺点:
- 架构设计变得
复杂
(尤其是其中的分布式事务) - 部署单个服务会比较快,但是如果一次部署需要多个服务,
流程复杂
- 系统的吞吐量会变大,但是
响应时间会变长
运维复杂
度会因为服务变多而变得很复杂- 架构复杂导致
学习曲线
变大 - 测试和查错的复杂度增大
- 技术多元化,这会带来维护和运维的复杂度
- 管理分布式系统中的服务和调度变得困难和复杂