nginx php-fpm缓存每秒多次请求

时间:2014-11-29 09:41:32

标签: php mysql symfony caching nginx

我遇到以下情况:

一个拍卖网站,其中所有连接的用户每2秒向服务器发出一次ajax请求。

数据每2秒更改一次,因此无法长时间缓存,所以我不知道。

实现这一目标的最佳方法是什么:

如果我在同一秒内有200个请求,请为它们提供相同的响应,而不是再次运行php并连接到mysql以获得结果。

所以我不知道这是否可以在1秒的缓存持续时间内完成,我也不知道什么是更好的使用,在Nginx方面,或者其他什么PHP方面,如APC。

有什么想法吗?它有意义吗?

我的问题是我尝试调整Nginx和php-fpm,现在它可以在2000ms的响应时间处理200个请求/秒,500个请求/秒大约是5000毫秒所以我正在寻找一种加快速度并尽可能多地处理每秒请求的方法。

更新
该网站在Symfony2上运行,因此欢迎任何与之相关的建议。

更新2 !!!
我已经将处理ajax请求的应用程序的一部分移动到单个php文件中,而不使用Symfony2框架。它执行3个sql查询并返回json响应。现在它可以150毫秒/秒处理1000多个请求,它确实令人难以置信..我猜Symfony2真的需要调整才能做同样的事情我想问题不是php而是框架使用的所有内存

1 个答案:

答案 0 :(得分:0)

Vanilla PHP当然比任何PHP框架都要快,但是维护几十个这样的脚本是很痛苦的。您可以坚持使用Symfony并使用Varnish来处理繁重的负载。缓存TTL可以低至1秒,使用Varnish可以处理数千个请求。