高并发系统架构详解

一、系统架构演进

你开发了一个网站(例如网上商店、社交网站或者其他任何东西),之后你把它发布到了网上,网站运行良好,每天有几百的访问量,能快速地相响应用户的请求。

但是有一天,不知道什么原因,你的网站出名了!

每分每秒都有成千上万的用户蜂拥而至,你的网站变得越来越慢……

对你来讲,这是个好消息,但是对你的Web应用来说这是个坏消息。因为现在它需要扩展了,你的应用需要为全球用户提供7*24不宕机服务。

如何进行扩展?

几年前,我讨论过水平扩展与垂直扩展。简而言之, 垂直扩展意味着在性能更强的计算机上运行同样的服务,而水平扩展是并行地运行多个服务。

如今,几乎没有人说垂直扩展了。原因很简单:

  • 随着计算机性能的增长,其价格会成倍增长。

  • 单台计算机的性能是有上限的,不可能无限制地垂直扩展。

  • 多核CPU意味着即使是单台计算机也可以并行的。那么,为什么不一开始就并行化呢。

现在我们水平扩展服务。需要哪些步骤呢?

1、单台服务器 + 数据库

高并发系统架构详解_第1张图片

上图可能是你后端服务最初的样子。有一个执行业务逻辑的应用服务器(Application Server)和保存数据的数据库。

看上去很不错。但是这样的配置,满足更高要求的唯一方法是在性能更强的计算机上运行,这点不是很好。

你可能感兴趣的:(Linux,Windows,SRE,运维部署与监控,jvm,性能优化,tomcat)