PHP实现简单RPC,RPC连接类分享

2020-07-09   阅读:308   分类:后端    标签: PHP

image.png

什么是rpc

RPC全称为Remote Procedure Call,翻译过来为“远程过程调用”。目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程通信和相互调用。远程调用的应用场景极其广泛,实现的方式也各式各样。

PHP实现简单RPC,RPC连接类分享

<?php
/**
 * User: Huipu
 * CreateTime: 2020/07/05 上午12:2
 * Description: Rpc客户端
 */
class RpcClient {

    /**
     * User: Huipu
     * CreateTime: 2020/07/05 上午12:21
     * @var array
     * Description: 调用的地址
     */
    private $urlInfo = array();

    public static function gertss($url,$data){
         // TODO: Implement __call() method.
        //创建一个客户端
        $client = stream_socket_client("tcp://".$url, $errno, $errstr);
        if (!$client) {
            exit("{$errno} : {$errstr} \n");
        }
//        {"method":"TaskServer.Action","params":[{"action": 1}],"id":1}

        $data = $data;
        //向服务端发送我们自定义的协议数据
        fwrite($client, json_encode($data));
        //读取服务端传来的数据
        $data = fread($client, 2048);
        //关闭客户端
        fclose($client);
        return $data;
    }
}

使用方法

$url='220.13.112.33';
$data = [
            'method' => 'TaskServer.Action',
            'params' => [
                ['action' =>2]
            ],
            'id' => 1
        ];
$res_pon=\RpcClient::gertss($url,$data);


如果本文对你有用就点击下方广告赞助下呗!

【腾讯云】11.11 云上盛惠,云产品限时抢购,1核2G云服务器首年88元

‘简忆博客’微信公众号 扫码关注‘简忆博客’微信公众号,获取最新文章动态
转载:请说明文章出处“来源简忆博客”。http://www.tpxhm.com/adetail/361.html

×
觉得文章有用就打赏一下文章作者
微信扫一扫打赏 微信扫一扫打赏
支付宝扫一扫打赏 支付宝扫一扫打赏

文章评论(0)

登录
头像

简忆博客
仕而优则学,学而优则仕。

置顶推荐

打赏本站

如果你觉得本站很棒,可以通过扫码支付打赏哦!
微信扫码:你说多少就多少~
微信扫码
支付宝扫码:你说多少就多少~
支付宝扫码
×