首页 > 编程语言 >rpyc python rpc 框架

rpyc python rpc 框架

时间:2024-09-29 17:02:31浏览次数:10  
标签:服务 rpyc python MyService 支持 server rpc import

rpyc 属于一个老牌项目了,支持rpc 模式的处理,同时支持面向服务的开发模式,包含了一些安全控制,支持服务注册,服务发现

包含的特性

  • 透明,可以使用类似本地模式的方法访问
  • 对称,client 以及server 都可以支持调用
  • 支持同步以及异步操作
  • 平台无关
  • 低开销
  • 安全,支持基于tls,以及ssh 的访问模式
  • zero deploy 支持(基于plumbum)
  • 支持面向服务的开发模式,支持服务发现

参考玩法

  • 启动注册中心
./venv/bin/rpyc_registry  -l enable
  • server 服务
import rpyc
from rpyc import Service
from rpyc.utils.server import ThreadedServer
@rpyc.service
class MyService(Service):
    # 定义服务名称
    ALIASES = ["MyService"]
    def on_connect(self, conn):
        print("Connected")
 
    def on_disconnect(self, conn):
        print("Disconnected")
    @rpyc.exposed
    def get_answer(self):
        return 42
    @rpyc.exposed
    def get_question(self):
        return "what is the answer to everything?"
server = ThreadedServer(MyService,port=18861,auto_register=True)
server.start()
  • client
import rpyc
list_service = rpyc.list_services()
# 基于服务名称的链接,如果是多个服务会选择第一个
info = rpyc.connect_by_service("MyService").root.get_answer()
print(info)

说明

rpyc 属于一个比较老的项目了,当然注意使用,以及安全问题(推荐开启ssl 支持)

参考资料

https://rpyc.readthedocs.io/en/latest/index.html
https://github.com/tomerfiliba-org/rpyc
https://rpyc.readthedocs.io/en/latest/docs/zerodeploy.html#zerodeploy

标签:服务,rpyc,python,MyService,支持,server,rpc,import
From: https://www.cnblogs.com/rongfengliang/p/18377079

相关文章

  • prompt-poet 方便设计提示词的python 包
    prompt-poet方便设计提示词的python包,基于yaml以及jinja2开发,prompt-poet提供了灵活、动态的提示词创建prompt-poet饿的提示词模版混合了yaml以及jinja2prompt-poet模版处理渲染,初始阶段基于了jinja2,此阶段进行数据的校验,控制流程的执行,同时还可能包含模版处理的一些函......
  • 9.29Python基础-列表、元组
    Python列表(list)1.列表的定义和初始化列表是一种复合数据类型,可以包含不同类型的元素。x=[10,20,3.14,10+2j,True,False,"hqyj"]print(x)2.访问列表中的值2.1索引列表的索引从0开始,可以正向或反向访问。y1=x[0]#访问第一个元素y2=x[-1]#访......
  • 2024年华为OD机试真题-找终点-Python-OD统一考试(E卷)
    最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客     每一题都含有详细的解题思路和代码注释,精选c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。题目描述给定一个正整数数组,设......
  • Python Web 应用中的 API 网关集成与优化
    PythonWeb应用中的API网关集成与优化目录......
  • Python 在区块链智能合约开发中的应用与实践
    Python在区块链智能合约开发中的应用与实践目录......
  • Python 一键生成所有尺寸的应用Ico图标
    项目介绍在开发软件或网站时,我们经常需要为应用程序或网站设计专属的icon图标。我们将通过Python脚本一键生成iOS所有尺寸的应用图标,省时省力。编译环境Python版本:python3.8制作应用尺寸配置文件1.将所有尺寸的图片配置在iconContentsConfig.json文件中{"images":[......
  • Python 的 PIL库——Image.new() 的使用说明,制作icon图标
    Image包中的new()方法:新建一个图片对象,设置参数有:图片的模式,图片的尺寸,图片的颜色(不填写颜色的时候,其默认值为0,即黑色)返回:一个图片对象,即<class'PIL.Image.Image'>【语法格式:】Image.new(mode,size,color) 【参数说明:】mode:图片的模式。"1","CMYK","F",......
  • 计算机专业毕设选题推荐-基于大数据的豆瓣图书数据分析【python-爬虫-大数据定制】
    ......
  • Python基于自定义方法的排序
    Python基于自定义方法的排序在Python中,排序是一个常见的任务,它可以帮助我们根据特定的规则对数据结构(如列表)中的元素进行排序。Python的内置排序方法,如列表的sort()函数和内置函数sorted(),提供了非常灵活的排序机制,特别是通过key参数,我们可以指定一个自定义的函数来决定排序的顺......
  • 基于python+flask框架的社区防疫物资统计分析系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着全球公共卫生事件的频发,社区作为疫情防控的第一线,其防疫物资的有效管理与分配显得尤为重要。传统的物资管理模式往往存在信息不对称、......