阿狸先森|互联网架构“高并发”到底怎么玩?( 三 )


(2)n个服务器上的数据都一样 , 都是全集;
(3)理论上读性能扩充了n倍 , 写仍然是单点 , 写性能不变;
缓存层的水平拆分和数据库层的水平拆分类似 , 也是以范围拆分和哈希拆分的方式居多 , 就不再展开 。
总结
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一 , 它通常是指 , 通过设计保证系统能够同时并行处理很多请求 。
提高系统并发能力的方法主要有两种:

  • 垂直扩展(Scale Up)
  • 水平扩展(Scale Out)

前者垂直扩展可以通过提升单机硬件性能 , 或者提升单机架构性能 , 来提高并发性 , 但单机性能总是有极限的 , 互联网分布式架构设计高并发终极解决方案还是后者:水平扩展 。
互联网分层架构中 , 各层次水平扩展的实践又有所不同:
(1)反向代理层可以通过“DNS轮询”的方式来进行水平扩展;
(2)站点层可以通过nginx来进行水平扩展;
(3)服务层可以通过服务连接池来进行水平扩展;
(4)数据库可以按照数据范围 , 或者数据哈希的方式来进行水平扩展;
各层实施水平扩展后 , 能够通过增加服务器数量的方式来提升系统的性能 , 做到理论上的性能无限 。
思路比结论重要 。
来源公众号:架构师之路
【阿狸先森|互联网架构“高并发”到底怎么玩?】作者:沈剑