微信小游戏《龙虎麻将》架构和经验分享

####游戏目前IOS、Android、微信小游戏全部跑通。
当然还有一些BUG和可以优化的地方,主要我们是第一次做游戏开发,对游戏客户端,cocos creator都是从2018年1月份开始学习的,在cocos方面花了很多时间,遇见了很多坑,包括现在也有很多坑没有解决。
####先给大家介绍下我们游戏架构吧
后端采用的微服务架构,分为:engine,account,chat,gw,deskManage,settlement,bot七大服务。服务之间采用消息事件就行通讯,每个服务都实现了横向和纵向扩容,支持多核多机分布式部署无压力。

早期测试过10W机器人在线,1秒出牌,没有任何问题。

前端用的就是cocos creator。

服务器和前端通信用的websocket,编码用的flatbuffer和json,后期会把json全部替换为flatbuffer。

编程语言方面以js为主,engine最早用reasonml写的,后期换为了ocaml,chat用的go,其他用的都是js。

数据库用了redis和mysql。

第三方框架主要用了loopback,这个框架我们一直在用,IBM出品的。

cocos creator的编程我们用的MVC架构,基于react-redux改编了我们自己的cocos-redux https://github.com/lambdabear/cocos-redux

实现了状态决定渲染,整个代码里面基本没有用js的事件处理。
公司没UI,全部外包的,所以个人感觉做的不是很满意。

版号还在办理中……都办了几个月了……

下面是推广时间,最近在进行用户测试,搞了个拉人头送红包活动,有兴趣的可以玩玩

4赞

大家如果有特别想知道哪一块的,我可以先说下,不然就等我空了慢慢写 。

七大服务分别说一下呗

想知道哪个和哪方便内容

服务器是用go +node.js
写的吗

嗯 用了 go + nodejs + ocaml

很惊艳!!!

谢谢夸奖,不过还有很多地方需要优化和完善。第一次做游戏,经验还不足。

这样做是不是为了js代码共用吗

嗯嗯嗯

嗯,我们后台架构以后会支持我们所有游戏共用,

挺好的想法,和我们公司做法一样。。。哈哈

嗯嗯,特别是小游戏这种,后端都差不多,完全可以通用

试玩了一下,不错啊,有没有更详细的说明呢

可以说说 怎么实现 的每个服务都实现了横向和纵向扩容?

采用消息通信,每个进程和服务,全部做到状态自包含,相互解耦

你好,请问个人是怎么上麻将游戏的

cocos-redux 如何使用啊 感觉一脸懵逼

能否举例讲一下loopback 与 react-redux 是如何结合使用的,哪怕是一个是简单explorer,想学习一下后台构建上手,谢谢

蛮流畅,动画也ok,节奏可以再快点。只是这ui,我最多给800。。。