这个吞金兽不好养

花花小君

首页 >> 这个吞金兽不好养 >> 这个吞金兽不好养最新章节(目录)
大家在看 第一序列 天才相师 超级怪兽工厂 黄金瞳 神藏 校花之无敌高手 地产之王 我的绝色美女房客 超品相师 捡宝王 
这个吞金兽不好养 花花小君 - 这个吞金兽不好养全文阅读 - 这个吞金兽不好养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.logos444.com)这个吞金兽不好养掌阅免费小说更新速度全网最快。

上一章 目 录 下一章 存书签
站内强推 在科幻世界加点成了仙人 重生之赚它一个亿 第一序列 修仙:曹贼的秘密榜单 苟在妖武乱世修仙 正室 新风领地 放肆 摸金天帝 回到过去 她那么甜 是非 南城 恭喜发财 幻生之手 报* 第一神算 器武战皇 豪门女配不想拥有爱情 玛丽苏文崩坏手册 
经典收藏 开局半首后来,破防百万水友 这个主持不正经 龙门天子 打工进了黑厂,三天后我反手收购 顾道长生 总裁校花赖上我 从向往开始走向成神路 打工众态人生 古趟列车的乘客花柳君 神豪系统不够用怎么办? 一不小心,我就登顶了 四合院:截胡娄晓娥 至尊兵王 年少不峥嵘 最强医少 美剧世界的刺客 外卖大仙 医品宗师 谁与争锋 垂钓诸天 
最近更新 第一序列 天才相师 超级怪兽工厂 黄金瞳 神藏 天启之门 修真聊天群 宝鉴 校花之无敌高手 重生无冕之王 地产之王 绝品天医 我的绝色美女房客 生肖守护神 超品相师 捡宝王 大王饶命 我是大玩家 黄金渔场 空速星痕 
这个吞金兽不好养 花花小君 - 这个吞金兽不好养txt下载 - 这个吞金兽不好养最新章节 - 这个吞金兽不好养全文阅读 - 好看的都市生活小说