我在heroku托管的环境中运行了一些facebook应用程序,流量相当大。
这些都是使用两个php文件的简单应用程序(一个单页应用程序加上一个ajax数据入口点),非常简单,对服务器内存没有真正的需求,大部分资源都被用来提供图像,在cpu负载方面,它们要做的最重的事情是对web api的curl请求,或者调用数据库来获取一些数据。
由于流量和服务器并发的需求(平均10-20个DyNOS),我一直在研究如何配置一个应用程序以获得最大性能,并且发现最大的瓶颈来自HeloCu默认的“cc> Apache部署脚本在我的应用程序AQ>上设置了boot.sh
的限制。
这会将apache限制为by default。
新的和改进的1 thread for handling HTTP requests成本是原来的两倍,并且保证了两倍的ram和cpu性能。
现在我可以理解,当主要的瓶颈是处理http请求时,ram不会有太大的影响,但是我会假设新的dynos将设置为MaxClients=1
(还不能检查),所以我想知道我是否最好用2倍于我通常使用的1倍dynos的一半运行我的应用程序。有人知道答案吗?
最佳答案
提高到2倍dyno不会改变你的maxclients。您需要更改应用程序配置以支持多个并发请求。