[英]Twisted UDP Server - daemonize?
我有以下使用Twisted的UDP服務器:
# init the thread capability
threadable.init(1)
# set the thread pool size
reactor.suggestThreadPoolSize(32)
class BaseThreadedUDPServer(DatagramProtocol):
def datagramReceived(self, datagram, (host, port)):
#do some stuff here...
def main():
reactor.listenUDP(PORT, BaseThreadedUDPServer())
reactor.run()
if __name__ == '__main__':
main()
我希望能夠守護這個,所以從我讀過的內容我應該用.tac文件做一些事我可以用“twistd -y my_udp_server_file.tac”開頭 - 問題是我找不到任何文檔關於如何使用這種設置來做到這一點。 我所能找到的就是如何守護簡單的TCP echo服務器(帶有.tac文件)的例子 - 我需要一個像我一樣的多線程UDP服務器。
任何方向將不勝感激。
在該系統守護進程的代碼twistd
,如果你服務了UDP或TCP不關心。 守護UDP服務器的方式與守護TCP服務器的方式相同。 您應該能夠使用TCP echo服務器作為示例為您的UDP服務器編寫.tac文件。
試試這個:
import twisted.application
application = twisted.application.service.Application("Scotty's UDP server")
twisted.application.internet.UDPServer(PORT, BaseThreadedUDPServer()).setServiceParent(application)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.