我试图理解为什么我的开发环境得到如此低的 TPS 速率。
我正在使用以下内容:
- Mac OS X Mavericks
- 虚拟盒子
- 乌班图14.04
- 恩金克斯
- PHP5-FPM
- 西莱克斯
我没有对配置进行太多调整,只是nginx启用silex前控制器。
使用 JMeter,我正在测试这个环境每秒可以处理多少个请求,到目前为止我看到的是每秒 ~14 个事务。我正在点击的端点是一个简单的 hello 世界,吐出硬编码的 json 响应。
起初我以为nginx或php不接受并发连接,但看起来默认情况下它是启用的。
如果我运行一个线程,每个请求需要 70 毫秒左右,如果我运行 10 个线程,每个线程需要接近一秒,依此类推。无论我有多少线程,吞吐量都是 13/14 tps。当我运行这个时,top
显示所有 5 个 php5-fpm 进程每个进程占用大约 20% 的 CPU。
我做错了什么还是意料之中?
发现问题,是Virtualbox共享非常慢。将代码移动到 VM 上的文件夹会导致 TPS 增加 15 倍。