这个吞金兽不好养

花花小君

首页 >> 这个吞金兽不好养 >> 这个吞金兽不好养最新章节(目录)
大家在看 败家系统在花都 战地摄影师手札 超品战兵 天火大道 大艺术家 脑海带着一扇门 重生之神级败家子 吹神 超级小医生 官道无疆 
这个吞金兽不好养 花花小君 - 这个吞金兽不好养全文阅读 - 这个吞金兽不好养txt下载 - 这个吞金兽不好养最新章节 - 好看的都市生活小说

第31章 八万

上一章 目 录 下一章 阅读记录

“好,等我两分钟,我把另一个BUG给留言一下。”

毕竟意外的发现了另外一个BUG,叶新晨可不会错过这样的机会啊,不说其他什么,最起码悬赏再加钱肯定应该是毫无问题的。

叶子:维护辅助库中发现了另外一个BUG,应该是一个积年老BUG,代码片段发送给你们了。

发完这句话,叶新晨才是用大拇指按了按自己的太阳穴,然后笑了笑看着王晓雪,“我现在其实都已经不饿了,也不知道为什么,但是毕竟是你炒的,那我硬吃都得吃一点下去。”

“别贫嘴,我都端在厨房的桌子上面了。”王晓雪微笑着,“我今天就吃点糖拌番茄然后再喝一瓶酸奶就行了。”

叶新晨也只是点点头,“其实芹菜的话,你也可以吃点,毕竟芹菜沾油没有那么厉害。”

“嗯,这样的话,那我就少吃点吧。”王晓雪觉得也还是吃点饭比较好,毕竟不吃饭的话,肚子会一直空,饼干那些什么的,也顶不住天天不吃饭啊!

饭后,叶新晨自然是继续的忙碌着,他现在在刚刚吃饭的过程中好像有了一点思路,但是得实践才知道。

而通过反复对比正常执行过程和出错误的执行过程,叶新晨发现出错时,程序多了一条report!

要知道网元返回的信息包括命令返回、alert、report。alert出现就得记录并报错(除非本就预期有这么一条alert),而report一般可以无视,记录然后丢弃就是。

所以没人注意这一点。

而且叶新晨也知道,测试时网元负荷极低,而且先做过初始化。

因此每次执行应该都差不多,这里多个report,很可能就隐含着什么……

所以叶新晨开始仔细观察程序和网元的交互记录,发现那里的命令返回似乎有些不对。

命令返回有几百行,其中一列是时间,正常来说,时间应该是2019-10-31 18:21:22、2019-10-31 18:21:22、2019-10-31 18:21:23、2019-10-31 18:21:24……这样子一路排下来。

但那段数据,它的时间却是2019-10-31 18:21:22、2019-10-31 18:21:23、2019-10-31 18:21:21、2019-10-31 18:21:22、2019-10-31 18:21:23……

也就是在秒这个级别存在乱序,更具体点实际上是在毫秒级别存在乱序/跳跃,即时间格式为2019-10-31 18:21:22.456 2019-10-31 18:21:22.567这样,其中某些行组之间存在2、300毫秒的跳跃。

叶新晨按时间连续性把数据分割,发现它的输出是每几条到十几条为一组,组内顺序正常,组间乱序/跳跃;但把这些组挑选、拼接,可以得到两组数据,组内时间顺序良好、间隔均匀。

这说明,这些数据可能是两个命令的返回,不知怎么混到了一起。

就是因为这种混淆使得命令输出格式错乱,这才使得程序把命令返回识别成了report。

于是叶新晨看了一下对方的测试笔记,果然,他们测线路备份切换之类功能,所以需要同时控制两个网元;命令在程序中是顺序下发的,间隔可能只有若干毫秒。

看到这里,叶新晨心里有了底,开始观察程序所在目录,果然在里面找到个dat文件;用十六进制编辑器打开,里面果然是网上传来的原始报文信息,二进制格式。

报文格式是网元编号:信息。

再检查相关代码,很显然,这是因为网元编号被底层通讯模块丢弃了,只把文本信息返回给了上层;这就使得上层无法区分信息来自哪个网元。

平常这样做还没有问题;但遇到同时连接多个网元且需要同时检查多个网元返回、且返回信息还比较多时,数据就乱了。

这个东西太基础。

因为它和上层关系太过紧密,修改它影响太大;而且底层通讯模块的源码已经丢失……

于是,叶新晨尝试用字符串分析的办法来恢复它,鉴于不同命令返回格式不同、数据各异,叶新晨也是用程序尝试识别每个字段的数据类型,然后再检测它是否为有序内容。

叶新晨把这类列叫“索引列”,索引列有三种,一种是1、2、3这样的数字编号,另一种是网元编号这样一整个都是某个固定数字/字符的,还有就是年月日时分秒这样的时间信息;它们可能同时全部出现,但也可能只出现其中一种,甚至全都没有。

当识别出索引列之后,叶新晨就把顺序不乱、时间不跳变的若干行视为一个整体;然后像分析单词的“编辑距离”一样,寻找一种使得数据整体上“编辑距离”调整最小的方案,把混淆的数据分隔开。

因为一组数据可能有多个索引列,按照不同索引列拆分的方案还可能不一样。

因此叶新晨也是不得不遍历各种拆分方案,寻找综合最优的那种方案……

这是个挺复杂的程序。

实际上它超出了TCL的能力范围——它的确能工作,而且没有出错时消耗很小;但一旦出错,它需要一分多钟才能恢复。

总之,叶新晨还是把这个程序写出来了,而且的确能自动识别并纠正这种问题;但性能消耗太严重,不是可用于生产的正常解决方案。

想到这里,叶新晨还是决定帮他们重写底层通讯模块,修改通讯约定。

虽然这的确会引起底层代码的大量更改,但毕竟范围还算可控,而且不需要付出恐怖的性能代价。

就以上种种这一次是真的占用了叶新晨挺长时间,一个星期还没有完成。

因为发布悬赏的这个小公司也是意识到了叶子是个大神级别的人物,所以原本他们的悬赏价格只是两万,后来发现了那个积年老BUG又提升到了三万,到现在悬赏价格已经提升到了八万,就是想让叶新晨也一起寻找BUG根新底层模块的需求分析和代码编写。

看在悬赏这么高的份上,叶新晨也是其中帮他们设计了一下新通讯模块。

也因此,就因为这个悬赏,直接干了叶新晨整整七天,好在悬赏已经结算了,不然的话叶新晨都觉得是不是太累了点,当然还有一些方向上的代码编写,叶新晨为了职业道德还是需要给他们写一点的。

PS:感谢神文2019的一百起点币打赏。

喜欢这个吞金兽不好养请大家收藏:(m.goafoto.com)这个吞金兽不好养晋江免费小说更新速度全网最快。

上一章 目 录 下一章 存书签
站内强推 败家系统在花都 拜见教主大人 双世宠妃原著:爷我等你休妻 全职法师 超品战兵 张三丰异界游 萌宠甜心:恶魔少爷深深吻 易鼎 脑海带着一扇门 至尊鸿途 灵气复苏,我从种田开始修仙 武道大诸天 超级基因优化液 富贵荣华 重生之先声夺人 四合院之饮食男女 从影视世界学习技能 异世界的魔王大人 无尽武装 我的女友有别于人 
经典收藏 都市修仙之青帝归来 史上第一混乱 我在女子监狱当管教 我在九十年代 从写吞噬星空开始成神 跨越十二年的对话 重启复兴之门 我与女总裁的日常生活 金手指拍卖会 无奈爆富 美利坚之山林称王 至尊兵王 极品修真强少 神豪的娱乐生活 都市之仙尊归来 超神建筑商 爱情就在公寓里 来自地狱的男人 超品战兵 墓后之主 
最近更新 败家系统在花都 战地摄影师手札 超品战兵 重生1977年从知青开始 天火大道 陈二狗的妖孽人生 悠闲乡村直播间 大艺术家 脑海带着一扇门 超级军工帝国 重生之神级败家子 重生之繁花似水 吹神 超级小医生 重生之先声夺人 官道无疆 深空彼岸 重生无冕之王 神级强者在都市 韩警官 
这个吞金兽不好养 花花小君 - 这个吞金兽不好养txt下载 - 这个吞金兽不好养最新章节 - 这个吞金兽不好养全文阅读 - 好看的都市生活小说