1
ipconfiger 2014-07-23 14:56:17 +08:00
ab -c 10000 -n 10000 -r http://localhost:8998/echo 你在开玩笑的吧
|
2
est 2014-07-23 15:01:46 +08:00
槽点太多。不知道从哪里吐。
|
3
mengzhuo OP |
5
fanta 2014-07-23 15:35:57 +08:00 1
c10k指的应该是接入socket的数量, 不包含其它的处理,每个socket都会占用内存的,所以机器的内存太小也不行.
|
6
ipconfiger 2014-07-23 16:03:49 +08:00 1
keep住1W个链接,并不代表每秒能处理1w的请求啊,1W的连接数和1W的QPS是两码事哦
|
7
mengzhuo OP @ipconfiger
@fanta 原来是这样…… 那怎么测试C10K? 只需要 ``` [socket.socket().connect(('localhost', 8998)) for x in xrange(10000)] ``` ? |
8
ipconfiger 2014-07-23 16:32:38 +08:00
多找点机器来当客户端,每个客户端1K个连接嘛,然后频繁的发ping pong
|
9
mengzhuo OP @ipconfiger
我单机链接的…… tcp 0 0 127.0.0.1:8998 127.0.0.1:42207 ESTABLISHED tcp 0 0 127.0.0.1:34349 127.0.0.1:8998 ESTABLISHED ...... $ netstat -nt | grep 8998 | wc -l 20004 这样算不算C10K了……只要不发数据包,gevent太淡定了,直接hold住了 |
10
julyclyde 2014-07-23 16:40:40 +08:00 1
@mengzhuo C10K在当代本来就不是难事啊,以至于单独去测试“保持10K个连接”已经是没有意义的事了。还是讨论处理请求的能力吧
|
11
ipconfiger 2014-07-23 16:43:09 +08:00 1
@mengzhuo 现在的机器性能来说这都是很easy的,别人都在show单机100W连接了,连接起完了20多G内存就不见了
|
12
mengzhuo OP @julyclyde
@ipconfiger 原来是遗留的问题 我还是折腾RQS吧 我是双核PC 同样输出一样的HTML模板,单核下,bottle 和 nginx 都只能1300左右RQS, 协程果然牛B 不过nginx升到4 个workers就能1W4 RQS....乖乖起4个线程跑应用好了 |
13
mengskysama 2014-07-23 16:55:05 +08:00 1
CK10 保持住1W链接,ping pong。不能用http来测试。
其实没必要这么测。在另外多启动几台机器启动1000线程不断进行HTTP REQ,这样测试出来更有意义。 |
14
mengzhuo OP @mengskysama
按你说的方法测试了一下, 其他机子竟然可以有这种响应速度了…… Requests per second: 2487.28 [#/sec] (mean) Time per request: 40.205 [ms] (mean) Time per request: 0.402 [ms] (mean, across all concurrent requests) Transfer rate: 347.34 [Kbytes/sec] received |
15
mengzhuo OP 最差的机子上也是
Requests per second: 1012.04 [#/sec] (mean) Time per request: 98.810 [ms] (mean) Time per request: 0.988 [ms] (mean, across all concurrent requests) Transfer rate: 5709.52 [Kbytes/sec] received 照这个处理速度和能力……只是访问主页的话能顶住8千万日PV? |
17
mengskysama 2014-07-23 17:43:27 +08:00
@mengzhuo 妥妥的,试试flask我印象中结果更快。。。。虽然没啥意义就是了。好像还支持多线程来着
|
18
mengskysama 2014-07-23 17:46:18 +08:00
|