长江书屋

第946章 鎏金七日83(第2页)

天才一秒记住【长江书屋】地址:https://www.cjshuwu.com

,她也是相当恭维地称呼对方:“乔大神,我想问你个事儿。”

阮平夏觉得代码这事还是得问问it界大佬,毕竟术业有专攻,说不定他们会有不同的视角来解读这事。

乔俊楚看到阮平夏发来的一大段话,他理解、沉思了片刻后,也给阮平夏回道:

【正常情况下,我们本身底层真实用户是“蓝星玩家”

,进入环境后,系统会给我们分配一个代理账号,也就是我们在副本世界里的角色身份,你就是艾莉诺?冯?莱斯特。

】

【正常的全部对外交互,所有消息、指令输出,全部走代理账号做封装转发。

】

【外部模块收到信号,只能看见代理身份,原始用户id会被封装层拦截,不对外暴露。

】

【所以正常逻辑是:你说话发出指令→封装层打标签【艾莉诺?冯?莱斯特】→发送给npc实例tony。

tony接收之后写本地日志,来源字段就记录艾莉诺。

但你看到的日志,来源直接写了你原始用户id。

出现这种,大体就两类情况。

】

阮平夏继续往下看,乔俊楚说:

第一种,接收端本地解析故障。

也就是tony这边出问题。

tony是一个独立运行实例,他内部有一道身份过滤校验子程序,作用就是把收到的信号,只提取代理身份,丢弃底层原始标识。

如果这个实例cpu进程资源被疯狂占满,别的模块抢占绝大多数资源,负责身份掩码过滤的子程序被挤垮、调用超时、直接跳过执行。

数据包没经过过滤清洗,原始数据裸流直接喂给日志打印函数。

日志就会把藏在内层的真实源id直接打印出来。

这只是接收方本地日志写错。

发给全局系统的数据报文,会依旧带着代理艾莉诺的身份。

只有tony自己本机记录踩坑。

算属于实例高负载下的偶发bug。

但这种故障有前提条件:必须是接收方进程濒临崩溃,过滤模块失效。

状态恢复之后,这个bug大概率复现不出来。

第二种情况嘛,不能排除局部中间人篡改。

信号从你发出之后,抵达tony进程之前,在二者中间的通信链路里,有东西修改了tony本机日志的打印字段。

可能只改tony本地显示输出,不改上报给总服务器的数据包。

外面什么都看不出,唯独tony这边日志被改写。

干这个不需要改动你本人的封装层,只需要拥有这个对局空间局部数据流读写权限。

本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!

如遇章节错误,请点击报错(无需登陆)




新书推荐

特种岁月氪金养美人,我躺着赢麻了穿成窝囊小姐的贴身丫鬟神农别闹大话之神绝世保安武林店小二绝色占卜师:爷,你挺住!龙符凌天至尊我的狗狗公司闻名世界明婚暗恋乱世情歌:农门女将传奇篮神豪门拖油瓶,我靠画符爆红全网大国工程NBA禁区推土机韶光艳极品捉妖系统万界基因我当大圣姐姐这些日子,操碎了心(系统)当幸运值为max时万界时空穿越者赤骨天梯玄学大佬只想当咸鱼