Python 优雅地退出SimpleXMLRPCServer应用程序

Python 优雅地退出SimpleXMLRPCServer应用程序,python,xmlrpclib,simplexmlrpcserver,Python,Xmlrpclib,Simplexmlrpcserver,我正在尝试使用SimpleXMLRPCServer创建一个小应用程序,我想知道在收到SIGTERM时如何正确退出它 原因是我稍后将为应用程序创建一个启动/停止脚本,我希望它在停止之前执行各种操作 我当前的代码是: import SimpleXMLRPCServer import signal import sys if __name__ == "__main__": print "setting up xmlrpc server" server = SimpleXMLRPCSe

我正在尝试使用SimpleXMLRPCServer创建一个小应用程序,我想知道在收到SIGTERM时如何正确退出它

原因是我稍后将为应用程序创建一个启动/停止脚本,我希望它在停止之前执行各种操作

我当前的代码是:

import SimpleXMLRPCServer
import signal
import sys

if __name__ == "__main__":
    print "setting up xmlrpc server"
    server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8000))

    def signal_handler(signum, frame):
        print "received signal"
        server.server_close()

        # perform clean up, etc. here...

        print "exiting, gracefully"
        sys.exit(0)

    # signals
    signal.signal(signal.SIGTERM, signal_handler)
    signal.signal(signal.SIGHUP, signal_handler)
    signal.signal(signal.SIGINT, signal_handler)

    print "serving forever"
    server.serve_forever()
这是可行的,但我不太确定我是否用了“正确”的方法。有什么想法或想法吗

还有,还有其他我应该倾听的信号吗