全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

使用XML库的方式,实现RPC通信的方法(推荐)

1、先说结论:使用xml-rpc的机制可以很方便的实现服务器间的RPC调用。

2、试验结果如下:

3、源码如下:

服务器端的源代码如下:

import operator, math
from SimpleXMLRPCServer import SimpleXMLRPCServer
from functools import reduce

def main():
  server = SimpleXMLRPCServer(('127.0.0.1', 7001))
  server.register_introspection_functions()
  server.register_multicall_functions()
  server.register_function(addtogether)
  server.register_function(quadratic)
  server.register_function(remote_repr)
  
  print("Server ready")
  server.serve_forever()
  
def addtogether(*things):
  """Add together everything in the list things ."""
  return reduce(operator.add, things)
  
def quadratic(a, b, c):
  """Determine x values satisfying: a * x * x + b * x + c = 0"""
  b24ac = math.sqrt(b*b - 4.0*a*c)
  return list(set([(-b-b24ac) / 2.0*a, (-b+b24ac) / 2.0*a]))
  
def remote_repr(arg):
  """return the repr() rendering of the supplied arg """
  return arg
  
if __name__ == '__main__':
  main()

客户端的代码如下:

import xmlrpclib

def main():
  proxy = xmlrpclib.ServerProxy('http://127.0.0.1:7001')
  
  print("Here are the functions supported by this server:")
  
  print("next calculator addtogether: ")
  print(proxy.addtogether('x','y','z'))
  print(proxy.addtogether('x','y','z'))
  
  print(proxy.addtogether('x','y','z'))
  print(proxy.addtogether('x','y','z'))
  for method_name in proxy.system.listMethods():
    if method_name.startswith('system.'):
      continue
      
    signatures = proxy.system.methodSignature(method_name)
    if isinstance(signatures, list) and signatures:
      for signature in signatures:
        print('%s(%s)' %(method_name, signature))
        
    else:
      print('%s(...)' %(method_name,))
      
    method_help = proxy.system.methodHelp(method_name)
    #if method_help:
    #  print(' ', methodHelp)
  
  print(proxy.addtogether('x','y','z'))
  print("addtogether result ")
      
if __name__ == '__main__':
  main()

以上这篇使用XML库的方式,实现RPC通信的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# XML库  # RPC通信  # python基于xmlrpc实现二进制文件传输的方法  # python使用xmlrpc实例讲解  # 给大家  # 希望能  # 这篇  # 很方便  # 先说  # 小编  # 源代码  # 大家多多  # 客户端  # server  # main  # ready  # functools  # SimpleXMLRPCServer  # def  # reduce  # print  # addtogether  # remote_repr  # quadratic 


相关文章: 已有域名能否直接搭建网站?  如何通过山东自助建站平台快速注册域名?  C#如何使用XPathNavigator高效查询XML  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  建站之星2.7模板:企业网站建设与h5定制设计专题  如何在阿里云香港服务器快速搭建网站?  网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  公众号网站制作网页,微信公众号怎么制作?  在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  如何选购建站域名与空间?自助平台全解析  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  建站之星代理如何优化在线客服效率?  电商网站制作公司有哪些,1688网是什么意思?  婚礼视频制作网站,学习*后期制作的网站有哪些?  东莞专业制作网站的公司,东莞大学生网的网址是什么?  建站之星2.7模板快速切换与批量管理功能操作指南  建站之星如何实现五合一智能建站与营销推广?  高防服务器如何保障网站安全无虞?  Python路径拼接规范_跨平台处理说明【指导】  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  Android自定义listview布局实现上拉加载下拉刷新功能  如何访问已购建站主机并解决登录问题?  如何在局域网内绑定自建网站域名?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  建站org新手必看:2024最新搭建流程与模板选择技巧  建站之星展会模板:智能建站与自助搭建高效解决方案  如何自定义建站之星模板颜色并下载新样式?  已有域名如何快速搭建专属网站?  如何用西部建站助手快速创建专业网站?  如何选择服务器才能高效搭建专属网站?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  大连 网站制作,大连天途有线官网?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  网站设计制作企业有哪些,抖音官网主页怎么设置?  太原网站制作公司有哪些,网约车营运证查询官网?  北京专业网站制作设计师招聘,北京白云观官方网站?  建站之星后台管理系统如何操作?  Android滚轮选择时间控件使用详解  制作证书网站有哪些,全国城建培训中心证书查询官网?  如何通过万网虚拟主机快速搭建网站?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  如何登录建站主机?访问步骤全解析  ,网站推广常用方法?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。