Skip to content
官方QQ交流群
技术交流1:87208295   点此加入
技术交流2:787747122   点此加入
官网
云控制台
开放平台
关注微信公众号
代码仓库: 码云

RPC服务配置

服务端配置

服务配置文件为 /config/shiyun/rpc_server.php,内容如下:

php
<?php
return [
    //服务端配置
    'rpc_server' => [
        //worker进程数
        'processes'         => 1,
        //通信协议
        'protocol'          => '\shiyunWorker\protocols\JsonNL',
        //地址
        'host'              => '0.0.0.0',
        //端口
        'port'              => 2015,
        'socket'            => '',
        //服务进程名
        'worker_name'       => 'jsonRpcServer',
        //日志路径
        'log_file'          => '/www/runtime/workerman/log.log',
        //服务
        'service'           => [
            'User' => \app\test\logic\User::class
        ]
    ],
    // 统计数据的协议地址
    'statistic_process' => [
        //统计数据的协议地址
        'socket' => 'udp://127.0.0.1:9200',
    ]
];
<?php
return [
    //服务端配置
    'rpc_server' => [
        //worker进程数
        'processes'         => 1,
        //通信协议
        'protocol'          => '\shiyunWorker\protocols\JsonNL',
        //地址
        'host'              => '0.0.0.0',
        //端口
        'port'              => 2015,
        'socket'            => '',
        //服务进程名
        'worker_name'       => 'jsonRpcServer',
        //日志路径
        'log_file'          => '/www/runtime/workerman/log.log',
        //服务
        'service'           => [
            'User' => \app\test\logic\User::class
        ]
    ],
    // 统计数据的协议地址
    'statistic_process' => [
        //统计数据的协议地址
        'socket' => 'udp://127.0.0.1:9200',
    ]
];

实例化new \shiyunWorker\process\JsonRpcServer();
对象时可以传入自定义的配置文件绝对路径,或者直接传入一个数组。

php
#!/usr/bin/env php
<?php
require_once __DIR__.'/vendor/autoload.php';
// 应用初始化


/**
 * 配置方式:默认读取
 */
$worker = new \shiyunWorker\process\JsonRpcServer();
$worker->start();

/**
 * 配置方式:传入绝对路径
 */
$worker = new \shiyunWorker\process\JsonRpcServer("/www/xxx/config.php");
$worker->start();

/**
 * 配置方式:传入数组
 */
$config = [
    'rpc_server' => [
        ....
    ],
    'statistic_process' => [
        ....
    ]
];
$worker = new \shiyunWorker\process\JsonRpcServer($config);
$worker->start();
#!/usr/bin/env php
<?php
require_once __DIR__.'/vendor/autoload.php';
// 应用初始化


/**
 * 配置方式:默认读取
 */
$worker = new \shiyunWorker\process\JsonRpcServer();
$worker->start();

/**
 * 配置方式:传入绝对路径
 */
$worker = new \shiyunWorker\process\JsonRpcServer("/www/xxx/config.php");
$worker->start();

/**
 * 配置方式:传入数组
 */
$config = [
    'rpc_server' => [
        ....
    ],
    'statistic_process' => [
        ....
    ]
];
$worker = new \shiyunWorker\process\JsonRpcServer($config);
$worker->start();

客户端配置

客户端配置文件为 /config/shiyun/rpc_client.php,内容如下:

php
<?php

//客户端配置
return [
    //驱动方式
    'type'               => 'workerman',
    //服务端连接池
    'rpc_server_address' => [
        'tcp://127.0.0.1:2015'
    ],
    //重连次数
    'reconnect_count'    => 1
];
<?php

//客户端配置
return [
    //驱动方式
    'type'               => 'workerman',
    //服务端连接池
    'rpc_server_address' => [
        'tcp://127.0.0.1:2015'
    ],
    //重连次数
    'reconnect_count'    => 1
];

$user_client = \shiyunWorker\rpc\JsonRpcClient::instance('User',$config);
$config 可以传入自定义的配置文件绝对路径,或者直接传入一个数组。

一、

php
<?php

/**
 * 配置方式:传入绝对路径
 */
$user_client = \shiyunWorker\rpc\JsonRpcClient::instance('User',"/www/xxx/config.php");
/**
 * 配置方式:传入数组
 */
$config = [
    ...
];
$user_client = \shiyunWorker\rpc\JsonRpcClient::instance('User', $config);
<?php

/**
 * 配置方式:传入绝对路径
 */
$user_client = \shiyunWorker\rpc\JsonRpcClient::instance('User',"/www/xxx/config.php");
/**
 * 配置方式:传入数组
 */
$config = [
    ...
];
$user_client = \shiyunWorker\rpc\JsonRpcClient::instance('User', $config);

Copyright © 2017 10yun.com | 十云提供计算服务-IPV6 | ctocode组开发