导语
想想一下,如何快速研发出一套面向某个垂直领域的电商系统。在人手紧张的情况下,时间不足,为了能够完成任务可能就是使用JSP模板引擎等技术快速的开发出一套系统来。后台使用一台数据库服务器存储业务数据。如下图
这个架构图是我们每个人比较熟悉的,也是最简单的架构原型图,很多的系统在最开始的时候,都是这样子的,随着业务复杂度的提高,架构做了叠加,然后就看上去复杂起来了。
在说回上面提到的电商系统,系统一开始上线之后,虽然用户量不大,也运行平稳。很有成就感的一件事情。有一天运营的同学搞了一波活动进行了全网的推广。这个时候系统的访问速度就开始变慢了。
分析程序日志之后,发现了问题,访问慢的主要问题就集中在与数据库的频繁交互上,商品信息,商户信息,用户信息等等,都是从数据库中进行查询的,并且查询的速度非常慢,每一次的查询都与数据库建立的连接,操作完成之后关闭释放连接,这样的调用方式就会导致,每次操作SQL就要建立连接。那么就出现问题了,是不是因为频繁的建立数据库连接导致系统性能的损耗呢?