随着B2C行业的发展,越来越多的人开始接受这种消费模式,那么随之而来的就是高并发的访问,同一时刻可能
会有成千上万人访问。这样对应用服务器和数据库服务器以及其它服务器都造成了很大的压力。如何有效的解决这些
问题是一个B2C企业生存的技术保证。下面从应用服务器和数据库服务器的角度提供一种解决方案。希望大家帮助
指出不足或者将其补充详细。
1、搭建CDN网络,目前已经有成熟的产品可以支持使用例如:F5服务器。其目的在于对于静态的页面和不变内容能够
缓存在距离客户较近的节点上,减轻直接访问应用服务器的压力。详见如下:
http://baike.baidu.com/view/21895.htm。这种技术在大型B2C企业例如淘宝正在使用。
2、图片使用单独的服务器管理,主要因为图片一般比较大,耗费I/O资源,如果集中在一台应用服务器上那么应用服
务器会因为强大的I/O消耗而崩溃。收集的相关资料:http://www.chinaz.com/web/2012/0218/235900.shtml
3、数据库连接池的使用,这个从数据库连接池原理可以清楚知道。如果对数据库的连接不加限制那么巨大的连接消
耗和内存消耗将是数据库服务器崩溃。除此之外,还可以考虑数据库的集群和数据库的表分区以及备份。
4、缓存(memoryCache),这是一个系统必须要考虑的,对于一些经常不变或者变动不频繁的内容不能一味的重新获
取,可以缓存起来,定时的同步。
5、当然我们可以直接把应用交给云厂商来维护。
在细节方面,我们还要注意sql语句的写法,数据库的设计(例如索引建立等),学会使用explain分析查询语句的性
能。程序代码的时间复杂度。
以上是对高并发性能优化的一个考虑方向的思考,具体的实施还有待商榷。