1、 熟悉golang语言,理解goroutine、内存分配、gc、channel原理,擅长go高并发、反射、AST编码开发
2 、 熟悉web后端技术栈,包含但不限于gin,缓存,安全;熟悉SSO和OAuth2.0技术
3 、 熟悉行业常见的架构方案,理解微服务架构的设计理念,包含但不限于微服务的高可用,可扩展,异步等;熟悉分布式协议
4 、掌握redis、mc、kafka、mysql、mongoDB、etcd等开源组件,对mongoDB、redis、etcd的源码有深入研究
5 、 熟悉docker原理,掌握dockerfile,掌握k8s的使用
6 、 有开源代码经验 https://github.com/enohuang/rpc;https://github.com/enohuang/web
7 、 熟悉 c++/c ,理解 c++的对象模型,熟悉 skynet+lua 开发
项目描述:为支撑“杨超越与粉丝互动玩游戏”需要,技术选型,把游戏的单体架构升级改造为支撑大规模围观用户的轻竞技游戏框架,实现无状态化游戏服, 满足30w用户同时在线围观需求。
成果描述:
1)拆分业务为网关服,TT接口服,鉴权服,游戏服,支持水平扩展游戏网关服,业务数据存储在redis集群,rabbit-mq的死信队列实现定时器,从而实现游戏服务无状态化
2) 小规模的全量数据推送方式,改为与客户端推拉结合方式,数据传送以增量+压缩方式。带宽资源大幅度降低到10%
3) 优化服务性能,调整数据推送优先级,修复在线玩家不受围观用户的影响
4) 使用nats增强版nats-streaming集群模式,避免单点问题和服务进程crash,没有订阅者监听主题而丢弃消息
5) 采用类似gorm的连接池方式控制下游接口的负载
6) 借鉴ectd的强一致性思路,实现游戏服的强一致性
7) 优化mqant,提交pr, https://github.com/liangdas/mqant/pull/107
角色 | 职位 |
负责人 | 高级后台开发工程师 |
队员 | 后端工程师 |
为支撑“杨超越与粉丝互动玩游戏”需要,技术选型,把游戏的单体架构升级改造为支撑大规模围观用户的轻竞技游戏框架,实现无状态化游戏服, 满足30w用户同时在线围观需求。 成果描述: 1)拆分业务为网关服,TT接口服,鉴权服,游戏服,支持水平扩展游戏网关服,业务数据
项目描述:拆分线上系统功能模块,对线上系统的痛点提供解决方案。 成果描述: 1)重构评论系统项目,拆分为 4 大模块,分别为 comment BFF service ,comment service ,comment-job service ,comment- admin s