zoukankan      html  css  js  c++  java
  • 创建tcp服务

    文档参考 https://tarscloud.github.io/TarsDocs/hello-world/tarsphp.html#chapter-3

    Tars-server服务

    tars-server 提供了底层的 server 框架,同时支持如下特性

    • 基于 swoole1.x/2.x 的高性能服务
    • 支持 tup 协议和 tars 流两种协议模式
    • 支持 http、tcp、timer 三种 server
    • 上报、监控、日志的集成
    • tars 平台发布支持

    创建TCP服务helloWorld

    安装节点

    docker run -d 
        --name=tars_node_tcp 
        --net=tars 
        -e INET=eth0 
        -e WEB_HOST="http://172.25.0.3:3000" 
        --ip="172.25.0.6" 
        -v /Users/clz/Tars/tars_node_tcp:/data/app 
        -e TZ=Asia/Shanghai  
        -p 9021-9031:9000-9010 
       tarscloud/tars-node:php
    

    创建服务

    与创建http服务不同,这里选择tars协议

    部署helloWorld服务的代码

    官方提供的demo https://github.com/TarsPHP/TarsPHP/tree/master/examples/tars-tcp-server

    修改参数

    tars目录下创建 tarsclient.proto.php 内容如下

    return array(
        'appName' => 'HelloWorld',
        'serverName' => 'TCPServer',
        'objName' => 'obj',
        'withServant' => true, //决定是服务端,还是客户端的自动生成
        'tarsFiles' => array(
            './example.tars',
        ),
        'dstPath' => '../src/servant',
        'namespacePrefix' => 'Serverservant',
    );
    

    tars.proto.php 内容修改如下

    return array(
        'appName' => 'HelloWorld',
        'serverName' => 'TCPServer',
        'objName' => 'obj'
    );
    

    对src里面的文件名称、命名空间、obj也做对应的修改

    进入到src 执行composer install

    生成客户端

    cd scripts && ./tars2php.sh

    会生成src/servant目录

    tars-client 中提供了对 tars 服务进行调用的 php 能力,包括:

    • 调用远程服务的实例;
    • 主调上报
    • 自动寻址模块

    进入src目录打包部署 composer run-script deploy

    部署代码

    接口调试

    在接口调试里上传TCPServer.tars进行调试

    调试成功

  • 相关阅读:
    go时间和日期转换
    go操作mysql
    Python常见错误处理
    C++ 常见问题
    CF605E Intergalaxy Trips
    均分纸牌详解
    P4447 [AHOI2018初中组]分组
    P4537 [CQOI2007]矩形
    P4823 [TJOI2013]拯救小矮人
    P5132 Cozy Glow之拯救小马国
  • 原文地址:https://www.cnblogs.com/webclz/p/13547442.html
Copyright © 2011-2022 走看看