1
我們正在對Tornado進行一些性能測試。這是代碼龍捲風在OSX上失敗,但在Ubuntu上工作
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上更改以使其正常工作?
這可能在http://serverfault.com屬於代替 –
你說 「沒有」 - 不龍捲風拋出一個異常?你能特別告訴我們症狀是什麼嗎? –
@ A.JesseJiryuDavis只需在連接7000個連接時停止處理連接。一段時間後,壓力測試結束並顯示所有人都「失敗」 – yzT