OS X与Ubuntu上的Python asyncio性能对比

2024-06-16 10:29:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我在OS X上的Python asyncio性能有一些问题。我的Macbook pro 2015具有16gb RAM。但是在OS X(El Capitan)上无法获得与Ubuntu相同的性能。即使考虑到我在虚拟机(vagrant,4gb内存)中运行Ubuntu的事实,我还是用OSX主机。在

带wrk的苹果操作系统基准测试: wrk -t8 -d 10s -c 300 http://127.0.0.1:9090 ⏎ Running 10s test @ http://127.0.0.1:9090 8 threads and 300 connections Thread Stats Avg Stdev Max +/- Stdev Latency 628.63us 1.45ms 16.32ms 89.46% Req/Sec 696.05 834.65 5.51k 88.89% 19498 requests in 10.08s, 361.78KB read Socket errors: connect 0, read 20482, write 0, timeout 0 Requests/sec: 1934.40 Transfer/sec: 35.89KB

Ubuntu:

wrk -t8 -d 10s -c 300 http://127.0.0.1:9090 Running 10s test @ http://127.0.0.1:9090 8 threads and 300 connections Thread Stats Avg Stdev Max +/- Stdev Latency 5.49ms 14.33ms 408.97ms 99.22% Req/Sec 3.58k 1.41k 8.42k 70.91% 204333 requests in 10.06s, 3.70MB read Socket errors: connect 0, read 3, write 977, timeout 0 Requests/sec: 20311.64 Transfer/sec: 376.88KB

服务器代码:https://gist.github.com/ssbb/5f6c2c043880e0e917c3254d06c52a7e

Ubuntu上的ulimit -ahttps://gist.github.com/ssbb/e468b3ede5470da25699e4da4506b77c

ulimit -a在OS X上:https://gist.github.com/ssbb/f2a846975069a1d62a313790ad8d26ce

sysctl -a在OS X上:https://gist.github.com/ssbb/c78d5da7ae9e3670175f643309cf9f6b

sysctl -a在Ubuntu上:https://gist.github.com/ssbb/9a00cc3856135369b16ddc0083d2bc88

为什么我在Ubuntu/osx之间有这么大的差异。我还试着在archlinux上运行这个服务器(不是VM,只是第二个操作系统),结果和osx一样

Ubuntu对TCP协议栈有什么“黑客”吗?在


Tags: httpsgithubcomhttpreadkbosubuntu
1条回答
网友
1楼 · 发布于 2024-06-16 10:29:08

MacOSX的网络堆栈实现速度比linux慢,这是众所周知的事实。在

我不知道为什么ArchLinux在你的机器上比Ubuntu慢。网络栈是由linux内核自己实现的,同一内核版本的linux发行版应该表现出几乎相同的性能。在

相关问题 更多 >