gpt4 book ai didi

python - Tornado 在 OSX 上失败但在 Ubuntu 上工作

转载 作者:太空宇宙 更新时间:2023-11-03 17:11:47 25 4
gpt4 key购买 nike

我们正在对 Tornado 进行一些性能测试。这是代码

import tornado.websocket
import tornado.ioloop
import tornado.web

class TestTornado(tornado.websocket.WebSocketHandler):
def open(self):
self.set_nodelay(True)
pass

def on_message(self, message):
self.write_message(message)
self.close()

def on_close(self):
pass

def main():
applicationList = []
applicationList.append((r"/ws", TestTornado))

application = tornado.web.Application(applicationList)
application.listen(8888)

myIOLoopInstance = tornado.ioloop.IOLoop.instance()
myIOLoopInstance.start()

if __name__ == "__main__":
main()

我们正在使用 thor --amount 10000 --messages 100 ws://localhost:8888/ws

进行测试

然而,在 OS X 中,它总是在大约 7000 个连接后失败,但在 Ubuntu 上则完全没有错误。请注意,我说的是连接,而不是文件,所以问题与 OS X 可以处理的最大打开文件无关(它已经设置为 1000000)。

所以..为什么会这样?我们可以在 OS X 上更改任何配置以使其正常工作吗?

最佳答案

这是 OSX 本身的问题。这些参数应该有所帮助,但我们不再在 OS X 上进行测试,所以不确定。

kern.ipc.maxsockbuf=4194304
kern.ipc.somaxconn=2048
kern.ipc.nmbclusters=2048
net.inet.tcp.rfc1323=1
net.inet.tcp.win_scale_factor=4
net.inet.tcp.sockthreshold=16
net.inet.tcp.sendspace=1042560
net.inet.tcp.recvspace=1042560
net.inet.tcp.mssdflt=1448
net.inet.tcp.v6mssdflt=1428
net.inet.tcp.msl=15000
net.inet.tcp.always_keepalive=0
net.inet.tcp.delayed_ack=3
net.inet.tcp.slowstart_flightsize=20
net.inet.tcp.local_slowstart_flightsize=20
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.icmp.icmplim=50

来源:https://rolande.wordpress.com/2010/12/30/performance-tuning-the-network-stack-on-mac-osx-10-6/

关于python - Tornado 在 OSX 上失败但在 Ubuntu 上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35181559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com