SimpleXMLRPCServer

远程程序调用(Remote Procdure Call, RPC)服务器就是一个程序,这种程序可以把函数显示给客户端,而客户端可以调用这些函数.

 

python很容易建立一个XML-RPC服务器,基于SimpleXMLRPCServer。

 

#! -*- coding=utf-8 -*-

 

#simplexmlrpcserver 第一个例子  远程调用,把本地的函数,给远程的调用

 

from SimpleXMLRPCServer import SimpleXMLRPCServer,SimpleXMLRPCRequestHandler

from SocketServer import ThreadingMixIn

import traceback

 

 

class Math:

    def pow(self,x,y):

        return x*y

    def hex(self,x):

        return "%x" % x

 

class ThreadingServer(ThreadingMixIn, SimpleXMLRPCServer):

    pass

 

serveraddr = ('',8765)

 

srvr = ThreadingServer(serveraddr, SimpleXMLRPCRequestHandler)

 

srvr.register_instance(Math())

 

srvr.register_introspection_functions()

 

srvr.serve_forever()

 

 

 

#! -*- coding=utf8 -*-

 

#测试xmlrpcserver

 

'''

运行该程序可以跟simpy.py 程序进行交谈,可以调用simpy 里面定义的pow(),和hex()函数,这个就是远程调用了

 

 

'''

 

import xmlrpclib, code

 

url = "http://localhost:8765/"

 

s = xmlrpclib.ServerProxy(url)

 

interp = code.InteractiveConsole({'s':s})

 

interp.interact("you can now use the object to interact where the server")

 

你可能感兴趣的:(server)