更好地使用twisted來創建XML-RPC服務器。因此,你將不再需要編寫自己的服務器,它是非常靈活,你就可以使用twistd
在後臺運行:
#!/usr/bin/env python
import time, datetime, os, sys
from twisted.web import xmlrpc, server
from twisted.internet import reactor
class Worker(xmlrpc.XMLRPC):
def xmlrpc_test(self):
print 'test called!'
port = 1235
r = Worker(allowNone=True)
if __name__ == '__main__':
print 'Listening on port', port
reactor.listenTCP(port, server.Site(r))
reactor.run()
else: # run the worker as a twistd service application: twistd -y xmlrpc_server.py --no_save
from twisted.application import service, internet
application = service.Application('xmlrpc_server')
reactor.listenTCP(port, server.Site(r))
reactor.run()
#internet.TCPServer(port, server.Site(r)).setServiceParent(application)
儘管我必須運行'supervisord -c /etc/ supervisord.conf',它仍可以很好地工作。這現在解決了它,但我仍然會看看扭曲。 – 2012-07-15 16:44:21