我们在http://www.beckworthemporium.com/index.php?option=com_rsappt_pro2&view=booking_screen_gad&Itemid=58
处有一个相当重的AJAX网站目前,每个页面请求都使用5/6 AJAX请求来返回页面的各个部分,并且相当于mySQL密集型。我们将在圣诞节之前缓慢增加流量。我们会看到使用keep alive有什么好处吗?
答案 0 :(得分:7)
另请查看并阅读http keep-alive in the modern age
我在你的页面上发了一份报告 http://www.webpagetest.org/result/121008_TX_KB9/
至于你的AJAX调用,我会改进那些你是否使用keep-alive。我会缓存回复。例如,在运行mysql查询并生成输出之后,将其缓存到磁盘几个小时(如果可能的话,将其缓存到更长时间),然后在后续调用中从磁盘中提取数据(如果尚未过期)。这将节省一大堆并加速整体事情。
另外,如果您关心速度,我会使用图像精灵来处理很多图像资源。我注意到你的一些图像是占位符并且是100%透明的,考虑只为那些使用css。这将大大减少您的整体请求。
我还会启用mod_expires并添加一些Expires标头。有关使用这些和更多良好实践功能的htaccess文件的示例,请查看: https://github.com/h5bp/html5-boilerplate/blob/master/dist/.htaccess
修改强>
Jeepstone,我建议你不要保持活着,也许可以使用CDN和Parallelize你的资源。您可能还想查看数据库配置。例如,MySQL具有较低的最大连接,您可能希望优化慢查询,连接超时并确保不使用任何持久连接。
此外,如果您真正关注网络堆栈的状态,您可以立即对其进行测试,而不是在有更多真实客户敲门时发现问题。我正在谈论压力/负载测试。
答案 1 :(得分:1)
大型网站上存在两个大问题:并发连接和延迟。 看看你的圣诞节数字,我认为你的网站不大。因此,使用Keep-Alive我不会看到很大的好处。启用Keep-Alive可能会增加无效连接的空闲连接数。
我会去测试你的网站的负载测试路线,看看最大的瓶颈是什么并修复它。通过找到最大的瓶颈并改进来迭代。您可能会在您的实例中发现数据库是主要罪魁祸首。有免费的负载测试工具,或半免费的:VS Test Suite为MSDN用户免费提供多达250个虚拟真实并发用户,这比你需要的更多。