来到新公司后,终于有机会用 git 作为版本控制的工具。通过 github 私有仓库进行 Pull Request 和 code review,的确十分方便。使用的时候发现自己关于分支的知识不够用了,出现过一次提交 Pull Request 后被 merge,然后自己本地又 merge 了,导致 git pull 时版本冲突的问题。另外,客户端不希望出现 merge,所有对共享配置的修改,都需要用 rebase 方式合并,又犯了一次错误

最近提交的代码里,主要是用 python 写的一个日志分析处理的工具。原来 SA 的童鞋用 shell 脚本搞了一个,不过对 shell 相关工具链用的比较深,改起来和调试也不太方便,于是我们这边主推用 python 重写一个版本。对于数据呈现,使用了 dygraphs 作为前端展现的工具,使用上还是比较简单的,指定一个 div 让它替换为图标,把数据整理成 csv 喂给它就可以了。这绘图还带了一个拖动条,可以重点看某一段时间的数据,十分不错。

游戏的逻辑代码也开始接触了,预计下周可以 ship 到生产环境上。新公司的 qc 数量不是很够,出 bug 影响比较严重,所以 ship 代码会比较谨慎。在 skynet 上写逻辑,与我之前的代码写法有点像。之前做军团模块,为了抽离数据保存的细节,特别做了一层 agent,负责具体操作数据。新公司里,在 skynet 上跑的 Lua 代码,也是 agent,具体的数据放在 redis。就好比 redis 是一个数据结构的库,lua 只负责业务逻辑,通过 redis 来存储、获取和设置数据。redis 的效率很高,即使是集中发礼包这种活动,也只是卡了几秒就完成了。而且,分离开不稳定的业务逻辑层后,业务逻辑层的崩溃不至于丢失业务数据,随时可重启解决问题。

新同事不见得特别牛逼,也不是神一般不会犯错误,但是他们修复错误的速度很惊人,很快便找到完成目标的正确方法,这点很值得我学习。希望下周一切顺利