您现在的位置是:首页 > PHP框架交流PHP框架交流
php yar扩展实现rpc调用
上善若水2022-03-09 18:35:57【PHP框架交流】
7824人已围观
简介php使用yar使用扩展进行rpc调用,以最大程度实现程序的解耦,类似java微服务互相调用.是一个不错的方式,简单使用rpc使用.yar使用文档:https://www.php.net/manual
php使用yar使用扩展进行rpc调用,以最大程度实现程序的解耦,类似java微服务互相调用.是一个不错的方式,简单使用rpc使用.
yar使用文档:https://www.php.net/manual/zh/yar.installation.php
1.第一步安装yar扩展
这一步我就已经踩坑,由于我的用的是phpstudy安装的yar扩展,直接下载好扩展后,拖到ext目录,测试死活安装不成功,把php7.2版本卸载后再安装依旧无法安装.再确认后认为无误后,使用phpstudy的php7.3很顺利的安装上扩展.可能就是phpstudy的这个7.2版本有些许问题吧. 提示无法定位程序输入点SSL_CTX_set_post_handshake_auth 于动态链接库D:\phpstudy_pro\Extensions\php\php7.2.9nts\ext\php_yar.dll 上.
上详细步骤.当前环境为php7.3 由于yar依赖于msgpack 我们需要同时安装这个两个扩展.
先下载 https://pecl.php.net/package/msgpack/2.1.2/windows 的 7.3 Non Thread Safe (NTS) x64
再下载 https://pecl.php.net/package/yar/2.1.2/windows 的 7.3 Non Thread Safe (NTS) x64
我的phpstudy下载安装目录为D:\phpstudy_pro
解压php_msgpack.dll 和php_yar.dll 到 D:\phpstudy_pro\Extensions\php\php7.3.4nts\ext
编辑D:\phpstudy_pro\Extensions\php\php7.3.4nts\php.ini 追加
extension=msgpack
extension=yar
然后 D:/phpstudy_pro/Extensions/php/php7.3.4nts/php -m
输入已安装的扩展 检查是不是有yar 扩展成功安装
2.新建两个网站来模拟不同程序之间的调用.
a.com代表提供服务的Yar_Server
新建一个index.php文件
<?php
class Service
{
/**
* @param $name
* @return string
*/
public function hello($name = 'test')
{
return 'hello rpc!' . $name;
}
/**
* @param $name 名字
* @return string
*/
public static function helloB($name)
{
return 'hello' . $name . ' rpc!';
}
protected static function helloProtected()
{
return 'hello protected';
}
}
$ob = new \ReflectionClass($_GET['class'] ?? 'Service');
$class = $ob->getName();
$server = new \Yar_Server(new $class());
return $server->handle();
再项目2新建index.php
<?php
$object = new \Yar_Client('http://a.com/');
$object->SetOpt(YAR_OPT_CONNECT_TIMEOUT, 10000);
$object->SetOpt(YAR_OPT_TIMEOUT, 10000);
echo $object->hello();
3.访问服务端
访问调用的客户段
很赞哦! (2)
上一篇: phpstorm 新建php文件显示为文本 不提示php语法
下一篇: 2022年面试前基本准备1
相关文章
随机图文
ThinkPHP6.0 paginate分页追加get参数 分页get参数丢失
ThinkPHP6.0在使用内置的paginate分页类时,在地址栏追加我们url参数搜索,点击下一页时get参数会丢失,追加get参数解决分页get参数丢失问题。ThinkPHP6.0分页参数主要让人捧腹大笑的笑话,专治各种不开心
1.本想对男神来个回眸一笑,可未曾料到天太冷,笑出了一个鼻涕泡儿。 2.每次别人问我路我都瞎指的,第一是因为我根本不认路,第二是为了给世人一个教训:不要随便相信长得好看的人。 3.高中老师:知不知道现在猪肉为什么这么贵?学生:不知道。老师:猪都坐到这里来了,能不贵吗? 4.最近出门不要穿裙子,容易被撩,天是好天,风不正经。 5.司机眼里只有两种人,比自己开的快的是傻逼,比自己开得慢的是菜鸟如何判断一个人是否适合做程序员?
软件蚕食一切,未来是属于程序员。人人都想学编程,但并非人人都适合编程。有人说:IT行业只有高智商的人才能进得去,而且以男性居多,还必须专业对口。事实上呢?很多计算机专业的大学生毕业后并没有从事本专业的php 安装第三方包aliexpress-sdk-PHP
在开发过程中,大公司在开发过程中会给我们提供sdk封装有签名验证生成,我们哪来就可以快速上手开发,这种公司还是蛮良心的,比如在开发中,速卖通后台及可以下载官方sdk,总结几种包的导入方式.1.直接导入