通过unix套接字对常规PHP 5.6进行基准测试时,结果要比tcp端口好很多。
当我运行这样的命令时:
$ ab -k -n 10000 -c 1000 http://127.0.0.1/api/user/1
我每秒平均收到3272次请求。
但是用tcp端口而不是unix套接字,我每秒获得6.5 reqs。
与wrk
$ wrk -t1 -c1000 -d5s http://127.0.0.1:80/api/user/1
在Unix套接字上:每秒6500请求
在TCP端口上:每秒300请求
当我得到这些结果时,我应该如何使用这些基准来了解服务器和代码如何处理负载?
我应该信任tcp端口还是unix套接字之一?
最佳答案
您如何在示例中使用Unix套接字? -k
选项是http keep alive。
Unix套接字用于进程间通信,因此我几乎可以肯定,用于访问Web服务器的主要访问方法是通过tcp。
确实,这正在测试您的代码和Web服务器的效率。如果您最关心代码的效率,则应考虑同时检查xdebug输出。
关于php - 通过unix套接字与tcp和ab和wrk对PHP进行基准测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31269251/