[linux环境] 基于thrift模拟游戏的简易匹配机制(一)

第一天: 实现匹配的客户端(game)和服务端(match_system)



thrift官方文档 

Apache Thrift - Homehttps://thrift.apache.org/

我的Git仓库

文件 · master · Knight bit / thrift_lesson · GitLab (acwing.com)https://git.acwing.com/knight/thrift_lesson/-/tree/master

注意:不会事无巨细,只是记录一下大致的流程,感悟


thrift_lesson/thift/match.thrift

创建两个接口 添加用户add_user  和  删除用户remove_user

      i32 add_user(1: User user, 2: string info),
      i32 remove_user(1: User user, 2: string info), 

实现match_system服务端

thrift_lesson/match_system/src文件夹下 

thrift -r --gen cpp ../../thrift/match.thrift

由此自动生成了一些接口相关的代码,非常nice, 真正需要我们实现的是具体业务

例如:Match_server.skeleton.cpp

 把gen-cpp改名为match_server(因为我们还要实现save_data的client端)

把Match_server.skeleton.cpp重命名为main.cpp,移到src文件夹下

先添加返回值(先编译通过再逐步添加)

 记得修改头文件的路径

编译,链接(需要用到thrift的动态链接库,加上-lthrift)

 g++ -c main.cpp 
 g++ *.o -o main -lthrift

同理完成game部分(Python),具体代码参见git...

接下来先运行服务端,(我们在main.cpp加入了简单的输出,为了在这里能够直观看出效果)

 然后运行客户端(即游戏), 可见服务端立刻有了"add_user"的响应,每执行一次都会有对应的响应, perfect!

git提交一下


总结:

今天主要实现结构如下, 实现了客户端添加玩家时(add user)服务端进项响应, 主要收获是体会到了thrift在跨语言开发上的便捷

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泥烟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值