phptars / tars-client
tars的php-client功能
Requires
- php: >=5.3
- phptars/tars-monitor: ~0.2
- phptars/tars-registry: ~0.1
- phptars/tars-utils: ~0.2
This package is auto-updated.
Last update: 2024-09-21 21:29:47 UTC
README
简介
主要包括主地址网络的接收、发送和报告能力
测试目录提供了tar服务的测试用例。服务名称是* * app.server.servant**
使用说明
参考提供的测试用例。
tar客户端调用tar服务。在实例化时,需要传入*tars\client\communicator config*实例,并设置必要的配置信息。主要包括以下内容
-
服务地址
-
主地址解析
-
当有多个机器提供服务时,可以通过主地址自动解析模式找到服务
-
指定服务地址
-
当需要从特定地址获取灰度或服务时使用此方法
-
网络传输
-
有三种模式:socket、swoole同步和swoole协程
-
注册
-
指定升级模块名称。默认的主地址是*tarsprox*,在指定服务地址时可以根据业务情况进行填写
-
编码格式
服务地址解析模式
结合testservant.php测试用例,介绍了不同服务地址解析的代码规范。
通过*tars\client\communicatorconfig*类设置相关配置。测试用例给出了两种地址模式的示例代码
- 主地址解析
一旦指定了定位器,tar可以自动根据服务名称获取服务地址。定位器配置的格式如下
$config = new \Tars\client\CommunicatorConfig(); $config->setLocator("tars.tarsregistry.QueryObj@tcp -h 172.16.0.161 -p 17890");
tar主也是一个tar服务。服务名称是*tar.Tarsregistry.Queryobj*,传输协议是TCP,服务地址是172.16.0.161,端口号是17890。请根据实际服务的实际情况填写* *
确定上述主服务后,可以根据需要指定模块名称和编码格式。默认的升级模块名称是*tarsproxy*。为了便于业务跟踪,建议重新指定升级模块名称
$config->setModuleName("App.Server");
$config->setCharsetName("UTF-8");
- 指定IP
指定服务方的地址。这样,您需要指定服务的IP和端口。代码如下。
$route['sIp'] = "127.0.0.1"; $route['iPort'] = 8080; $routeInfo[] = $route; $config = new \Tars\client\CommunicatorConfig(); $config->setRouteInfo($routeInfo);
其他用法与自动解析相同
变更日志
v0.3.0(2019-07-30)
-支持调用protobuf的服务