RPC框架-yar学习
2024-08-28 12:07:32
RPC采用客户机/服务器模式。 请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端, 进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。
php中RPC简单框架感觉是YAR,尝试自己写一个案例,提前需要安装yar框架,具体安装方法上网搜搜:
服务器端:地址:http://html.com/yar/Operator.php 代码:
class Operator { /**
* Add two operands
* @param interge
* @return interge
*/
public function add($a, $b) {
return $this->_add($a, $b);
} /**
* Sub
*/
public function sub($a, $b) {
return $a - $b;
} /**
* Mul
*/
public function mul($a, $b) {
return $a * $b;
} /**
* Protected methods will not be exposed
* @param interge
* @return interge
*/
protected function _add($a, $b) {
return $a + $b;
}
} $server = new Yar_Server(new Operator());
$server->handle();
客户的地址:http://html.com/yar/yar.php
代码:
$url="http://html.com/yar/Operator.php";
$client = new yar_client($url); var_dump($client->add(1, 2));
var_dump($client->call("add", array(3, 2)));
打印结果为:
int(3)
int(5)
最新文章
- BZOJ1025: [SCOI2009]游戏
- Sort--快速排序
- Android 关于倒计时功能的实现
- Hibernate学习之延迟加载
- NET单元测试的艺术
- JavaScript修改Canvas图片
- 《Master Bitcoin》学习笔记02——比特币的交易模型
- PAT乙级-1047. 编程团体赛(20)
- C语言博客作业—字符数组
- [转]Python多进程并发操作中进程池Pool的应用
- echarts 专题
- Picnic Planning POJ - 1639(最小k度生成树)
- 04flask_scripts使用
- windows下创建MySQL定时备份与删除脚本
- IIC稳定性.VBS
- hadoop 集群中数据块的副本存放策略
- 【BZOJ2749】【HAOI2012】外星人[欧拉函数]
- NSObject的hash方法
- 超级账本环境搭建fabric
- wxwidget wxpython 可视化开发工具
热门文章
- golang笔记:unsupported driver ->; Scan pair: <;nil>; ->; *string
- JDK/Java里的设计模式
- [Atcoder Grand Contest 002] Tutorial
- [BZOJ 2743] 采花
- 图像视图-ImageView
- sql字段字符用做其他类型查询
- 从最简单的vector中sort用法到自定义比较函数comp后对结构体排序的sort算法
- Swift数独游戏优化&mdash;&mdash;C++与OC混编、plist自动生成
- linux-统计文件中相同行的数量
- iis日志字段解析