正在仔细阅读你的文档和代码走读,对于数据协议,建议独立一个Lua的文件来交给开发者去解决。
比如,提供两个方法。
--nThreadID or ProcessID 这是为了保证数据分析的需要。开发者可以不用,也可以做分析使用
function GetWay_Data_Input( szData, nLen, nThreadID );
function GetWay_Data_Output( szData, nLen, nThreadID );
另外,希望追加对数据日志的跟踪,还有对异常数据过滤的机制,因为有时候,尤其在移动互联网的网络情况下,可能会有收发包不完全的情况。这种情况,如果能有专用日志提示用户就最好了。
另外不知道我说的对不对,我还要仔细看一下,你在有些收发数据的时候,是否考虑消息并发的情况?或者说,是否用队列管理更好一些?因为nginx是多进程的,或者万一后端是多进程或多线程的,那么数据到达你的网关,最好能有个排序处理的工序是否更好一些呢?
我也是做多年服务器开发的。
希望有机会交流学习。我的项目地址。
https://github.com/freeeyes/PSS
希望有机会互相学习,互相提高。做好一个开源是不易的,加油,给你一个赞。
嗯,这是fooking下一个版本将要添加的功能,能使用lua进行自定义协议处理,,当然在协议里面写逻辑也是可以的,只是不太推荐这样做。。至于你说的收发包不完全的情况,现在fooking有个简单的协议,size+body,,也就是说后端的php收到的请求肯定是一个完整的包!你说的收发队列应该就是Connection的readBuff与writebuff,,你看一下代码就能明白。。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
登录 后才可以发表评论