我正在使用txzmq
和twisted
来构建一个侦听器服务,该服务将通过推拉模式处理一些数据。这是一个有效的代码:
from txzmq import ZmqFactory, ZmqEndpoint, ZmqPullConnection
from twisted.internet import reactor
zf = ZmqFactory()
endpoint = ZmqEndpoint('bind', 'tcp://*:5050')
def onPull(data):
# do something with data
puller = ZmqPullConnection(zf, endpoint)
puller.onPull = onPull
reactor.run()
我的问题是 - 如何将此代码包装在扭曲的应用程序服务中?也就是说,如何将其包装到我以后可以运行的特定服务(例如MyService
)中:
from twisted.application.service import Application
application = Application('My listener')
service = MyService(bind_address='*', port=5050)
service.setServiceParent(application)
使用twistd
亚军?