主站lua开发简介以及常见问题定位

342 阅读2分钟

理论篇

认识一下mobiwt

mobiwt是手机主站管理客户端委托请求转发和接收的一个组件,其主要作用是接收客户端委托请求,组装成标准化参数,然后发给委托网关或者直接自返回(多用于委托确认对话框),在经过委托网关的时候进行参数合法性校验,以及参数映射表转换,在转换完成之后发送到委托主站由委托主站以透传的形式发送Transmit中间件进而发送到柜台。

手机主站lua和mobiwt的关系

通俗来讲就好比mobiwt就好比游戏的主程,lua就相当于嵌入到主程中的业务逻辑层。 对应到我们手机主站mobiwt的框架里面就好比mobiwt是主程,管理的是请求的出站入站,lua是逻辑业务层,管的参数组装,和配置,这样做的好处就是:

  • 模块化结构,将业务与主程剥离
  • 便于新业务的开发
  • 便于迭代和更新

就拿手炒的手机主站mobiwt部分来说,普通交易是直接写在mobiwt里面的,虽然效率上,稳定性上相比lua要好,但是不利于新业务的拓展,大家都知道C语言是一门编译型语言,在更新,迭代,发不上效率上大大低于有着胶水语言称号的lua

我们来认识一下lua语言

这部分就不说了,任何语言的学习都要通过实际编程来积累,对于lua,大家可到晚上找一下lua手册,学会基本语法,然后在实际编程中,通过查询lua手册,对基本语法,api的用法进行巩固。

实战篇

初探手机主站日志

直接线上测试主站log讲解:

  • 客户端请求入参(pageid framid instantid)
  • lua组装后的url
  • 请求返回
  • lua对返回的格式转换(几种转换格式和客户端的对应关系)

猎金主站lua架构简析

直接通过线上lua代码讲解:

  • pageid匹配
  • 请求入口
  • 返回入口

主站lua常见问题以及修复

  • 语法错误在重启mobiwt的时候在日志里面就会报错
  • 空指针错误 多发生与运行时,会导致客户端超时,手机主站日志也有会报错打印
  • 业务层报错 需要对照接口返回数据,定位问题出现的具体位置,然后给与修复

#拓展

网关参数转换

依据网关转换文档讲解,主要包括commonid转换,固定字段转换,扩展字段转换

接口代码架构简析

接口日志的查找和定位

查询接口日志,对应接口文档,定位柜台的问题