为了账号安全,请及时绑定邮箱和手机立即绑定

swoole 开发游戏服务端

swoole 开发游戏服务端

PHP
大话西游666 2019-03-17 14:56:19
现在准备使用swoole开发游戏服务端,暂时不考虑其他语言,因为公司没有熟悉其他语言,而且项目截止时间马上要到我想问的是,比如在开发服务端的时候,游戏上面有一个动作只有金币达到多少才能操作,这个server收到客户端的socket请求,判断金币,这个从数据库判断吗?前期预估tcp链接数大概有10w 如果直接从数据库判断感觉压力太大,另外我还需要保证数据完整性!如果真要这样做,数据库这块要一主多从,swoole里面的逻辑处理全部提交给task进城,处理完成之后推送到游戏客户端,,,这样我担心有延迟! 目前想采用办法是:1:客户端sokcet链接服务器2:游戏上的某个操作动作 commit一个动作3:后端根据这个动作进行处理 逻辑判断逻辑判断这块从数据库查询相关的数据进行比对(比如用户的金币)如果失败那么直接推送给客户端一个消息如果成功那么可能还要修改数据库 插入数据库一些相关的数据 ,最后推送给客户端成功的标识!!!!! 请大家发表意见!谢谢
查看完整描述

3 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

  1. 登录之后把用户信息写到redis/memcached这种缓存里面
  2. 所有计算都基于缓存计算
  3. 后台进程定期把缓存数据存入数据库

你试试看可不可以达到尼的效果?

查看完整回答
反对 回复 2019-03-18
?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

首先应该是登录获取token,然后会有一个网关服务器去判断用户与gameServer之间是否连接吧?请问你是怎么解决的?

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 697 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信