python 64式: 第1式 编写rpc的call和cast

本文介绍了如何使用Python编写RPC(远程过程调用)的call和cast。通过示例代码myclient.py和myserver.py,展示了如何启动服务器并进行客户端调用,最终得到执行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

myclient.py内容如下

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File    : myclient.py
# @Software: PyCharm

'''

参考文章:
http://blog.youkuaiyun.com/happyanger6/article/details/54777429
https://docs.openstack.org/oslo.messaging/ocata/rpcclient.html

关键:
1 RPC Client基础
oslo_messaging.RPCClient(transport, target, timeout=None,, version_cap=None, serializer=None, retry=None)
作用:调用远程RPC服务的类
参数: transport: rpc底层通信,支持rabbit,qpid
     target: 消息最终发送的地方
            形式:target(exchange,topic,server):
            参数:exchange:topic属于的范围,默认为配置文件的control_exchange
                topic: 可被远程调用的多个方法
                server:消息目的地服务器
2 RPC Call方法
oslo_messaging.RPCClient.call(ctxt, method, **kwargs)
含义:call方法是远程过程调用带有返回值的方法
特点:阻塞直到服务端返回结果
参数: ctxt:上下文字典,可为空
     method:被调用的方法名
     kwargs:调用该方法传入的参数
返回值:返回被调用远程方法的结果

3 RPC Cast方法
oslo_messaging.RPCClient.cast(ctxt, method, **kwargs)
含义:cast方法是远程过程调用,不带有返回值的方法
参数: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值