米松小说网 > 弱小友善的我 > 第445章 最初,他们只是不信他是秦始皇

第445章 最初,他们只是不信他是秦始皇


第445章  最初,他们只是不信他是秦始皇

    看到这个数据大家的第一个想法就是————

    这特么是BUG了吧。

    看到这个数字,几乎所有的程式设计师们,DNA都动了。

    小学生们最敏感的数字可能是100,因为这是他们能够达到的上限。

    而2147483647可能就是码农们最敏感的数字,至少是之一。

    一般出现这个数字的时候,并不代表著就真的是这个数字,而是结果超纲了,只能显示这个数字。

    当然了,更敏感的数据可能是—32768之类的,那就是溢出了,这个结果会更糟糕————

    现在并不代表事情不糟糕,只是网站做了防溢出处理,看起来没那么糟糕而已。

    毕竟,什么样的技术,能够直接把整个测试体系干穿?

    这是不可能的。

    可是,这个是平子大佬的比赛结果啊。

    万一平子大佬真的把比赛干穿了呢?

    等等,正因为是平子大佬,所以才更加不可能吧?

    毕竟,世界上有两个真理:

    一、世界上没有绝对的真理。

    二、平子大佬不懂算法。

    所以,到底是不是出了问题?

    大家其实也不知道自己的内心到底期待著什么,但还是决定把这件事情的判定交给比赛的主办方。

    于是,网站的后台,此时已经收到了雪花一般的网友提供的错误报告,告诉他们网站出错了,让他们赶快处理一下。

    说实话,作为一个主打搞笑和抽象的编程大赛的主办方,这个主要由L站的高级会员组成的主席团,都是业余时间在做这件事情。

    他们都是激进的技术主义者,并不怎么害怕出现什么问题,反而更注重效率。

    这种思路和官方的比赛是完全相反的。

    所以,这个这个天榜晋升系统其实也是自动的,只要积分够了之后,就会自动晋升,而不需要任何一个关键决策者的允许之类的。

    反正,对这种搞笑和抽象的比赛来说,就算是出现问题,也只是乐子中的插曲,只要及时纠正就好了,相比之下,即时反应变化才是更重要的。

    这也是这个竞赛系统被开发出来的初衷。

    换句话说,在参赛者们拼尽全力叠代自己的资料库查询方案的时候,其实这个主办方的网站,也在一刻不停的叠代和维护,以应对越来越多的访问者以及越来越多的代码量,不断优化测试方式和时间,不断减少资源压力,以及不断以更快的速度反映变化,让大家能够第一时间感知到自己努力的结果。

    至于结果会不会出错,只要不是大问题就无所谓,毕竟也不会有人来追责他们,对吧。

    陈雁行就是主办方的主要成员之一,作为L站的联合创始人和技术顾问之一,他也是这次比赛的最大技术支持与伺服器赞助商。

    因为这场比赛涉及到了唐一平,而自己作为【0T1P】大佬唐师傅的同辈人以及亲密战友,或者说作为一个「长辈」,参与进去终归是不好。

    毕竟这是在代写作业—一不管这事儿演变成了什么,最初也是为了代写作业。

    这种动机,就是不好的,自己作为长辈,不能鼓励这种事情。

    至少陈雁行是这么觉得的。

    他骨子里还是一个比较传统的男人来著。

    所以他只是在背后暗戳戳的推动了这场比赛的大型化和规模化,以及贡献了这个网站的大部分代码而已。

    什么坏事儿也没做。

    就是————看乐子。

    乐子人怎么能算是坏人呢?是吧。

    所以,在看到了雪花一般的报错的时候,作为可能是最强的独立网安专家之一的陈雁行,看到报错的第一个想法就是不可能。

    因为网站的代码是他写的,测试程序和方案也是他出的,就连测试集都是他弄来的真实测试集—一他不可能出这么大的差错。

    他又不是一个初出茅庐的菜鸟,他可能会犯错误,但是绝对不会在这种简单的问题上犯错误。

    但如果自己不可能出错,那他就要面对第二个不可能。

    这个测试结果是对的?

    这更不可能吧!

    毕竟那可是平子大佬,不会算法的平子大佬!

    平子大佬写出来FORK—Cane这种项目一点也不奇怪,毕竟平子大佬本身就是工程暴力美学的奇迹代言人。

    但是算法?

    我宁愿相信门口摆摊卖饭的大叔是秦始皇。

    这么想著,陈雁行打开了网站后台的日志,调出了平子大佬的测试日志。

    作为网安专家,陈雁行的「看日志」是一门绝活。

    速度快到夸张。

    只是扫了一眼,他就发现,没问题。

    至少是日志绝对显现不出来的问题。

    没办法了,他只能再自己手动跑一遍测试了。

    调出唐一平提交的代码,导入了由他提供的那个数据量为50万的学生档案测试集。  

    这是一个巨大的csv文档,整体大小大概500M。

    陈雁行自己估算过,如果把这些文本文档,转成资料库的格式,理论数据量应该是50M左右。

    这是其有效熵值转换成的比特数,也就是这个测试集本身蕴含的信息的比特数。

    但是这种单纯的数据是不能使用和检索的,所以才会有「资料库」这种东西,把信息编码索引,安排好位置。

    换言之,单纯的信息就像是无数的人,资料库就是盖上一栋大楼,把他们放进各自的房间。

    这就要在本身的数据基础上,加上B—tree或者其他tree的索引、哈希表等等,就像是楼梯楼层和门牌号。

    通常来说,这些数据转换成资料库格式之后,整体数据量大概在200M—300M。

    这大概就是地榜排名前几的水平,其实能做到这个数量级就已经很强了。

    但但如果是天榜的话,目前已经强到离谱了。

    譬如现在焦灼在天榜前列的两个ID:「递归之梦」和「等待戈多」,已经把这个数据压缩到了130M左右。

    在这个数据集上,已经可以和商用资料库相媲美,甚至在某些方面犹有过之了,当然,也不同程度的呈现出了过拟合,算是针对性优化。

    陈雁行把自己的数据集导入了唐一平的项目里。

    导入的速度很快,而且CPU占用率很高,几乎是瞬间拉满,然后导入完成。

    陈雁行再次跑了一遍测试流程。

    测试结果一行行的输出,和陈雁行在日志里面看到的一模一样,片刻之后,一模一样的分数出现。

    2147483647。

    这不对啊,这不可能。

    莫非他真的是秦始皇?

    作为一个网络安全的大佬,其实陈雁行首先就是个测试方面的专家,他设计的测试用例和测试程序非常完善。

    还是那句话。

    可能出错,但不可能出现这种低级错误。

    陈雁行拉出来了测试细分项,就看到了测试的平均响应时间。

    0ms(毫秒)?

    果然出错了吧。

    正常来说,这种体量的资料库的简单查询应该在几十毫秒。

    等等,莫非是查询速度快到了四舍五入之后都是0?

    直接低了一到两个数量级。

    这会儿,陈雁行其实遇到了和奎哥一样的问题。

    位数不够,显示不全的问题。

    可是,谁特么的资料库测试响应时间,需要用到比毫秒还小的单位啊!

    陈雁行一边吐槽著,一边打开了自己的测试程序,修改了一下代码,把统计单位变成了us(微秒)。

    然后又跑了一遍测试。

    这次结果终于显示正常了。

    不,陈雁行觉得这次更不正常了。

    因为测试最终的结果显示为23us。

    合著,不是零点几毫秒,是零点零二毫秒!

    特么的,这可不是四舍五入到0了吗?

    自己之前的测试集能够显示出来才怪!

    再特么的,系统的测试噪声都快要10us了好吗!

    读数据的延迟都要10us了好吗?

    你咋不飞呢?

    这怎么可能?

    这个查询结果有问题吧。

    真的有问题吧。

    对不起啊,平子大佬,我不是故意要这对你,但是我得把这个问题找出来啊————

    所以,陈雁行开始做一件自己最不喜欢做,也最鄙视做的事情。

    手动测试。

    好人家谁手动测试啊对吧!

    但是他不得不做。

    打开项目,随便从自己的数据集里面找了个测试项目,测试了一下。

    屏幕一闪,结果出现。

    陈雁行:????

    快到不可思议,而结果看起来似乎也没什么不对的地方。

    至少看出来如此。

    但是————

    这明明就不对啊!

    怎么会这么快?

    他不会是随便编造了测试结果吧!

    陈雁行仔细对比了一下,好像————没错?

    可是没错就是最大的错误啊!

    现在该怎么办?

    陈雁行纠结著,然后他想到了一个最简单的对比方法。

    他开启了一个批量测试脚本,同时打开了三个项目。

    平子大佬、递归之梦、等待戈多。

    当前天榜排名前三的三个项目。

    然后对比三者的输出。

    如果平子大佬的这个资料库进行了有损压缩,那最终输出终归会有差异。

    为了自己监控这个过程,这个脚本他直接留在了前台,可视化测试。  

    接下来,他直观的感觉到了差距。

    理论上来说,人类是不太可能分辨ms级别的时间的,更别说us了。

    但是当完全同步展现的时候,人还是能够本能地感觉到哪里不一样。

    简单测试这种对比还不明显,进入到复杂的搜索工作,譬如统计年龄大于20,分数大于60的人数时,双方的输出,已经肉眼都能够感觉出来延迟了。

    等。

    漫无目的的等。

    一边已经完成了,另外一边还在吭哧吭哧努力工作。

    而输出的结果,在脚本对比之后,也一次次通过。

    Done。

    Done。

    Done。

    Done——

    一行行的绿字在不断刷新。

    结果已经很清楚了,平子大佬的资料库的效率,就是高到离谱。

    这到底是啥啊!

    陈雁行的心中就只有一个想法。

    特么的他不会真是秦始皇吧!

    怀著这种想法,陈雁行打开了唐一平的项目代码。

    和别人不一样,别人是先去看代码,再去跑测试结果。

    但陈雁行现在已经知道结果了,再去看代码。

    所以脑海中已经预设了某种立场。

    没错,作为这个世界上,唯一知道唐一平和【0T1P】大佬父子关系的人,陈雁行的第一个想法就是,我去,莫非是【0T1P】大佬出手了!

    老子帮儿子,也很正常吧,更别说是女装这种胡闹的东西,【0T1P】那种大佬,肯定是看不下去吧。

    等等,【0T1P】大佬不会生气我不帮忙还在推波助澜吧。

    可是我扮演的是一个陪著孩子胡闹的叔叔的角色不是吗?

    不是吗?

    是吗?

    不是吗?

    陈雁行忐忑打开项目,一目十行向下看,然后很快就找到了核心的代码。

    虽然早就预设了立场,但真正看到这代码的时候,陈雁行还是愣凉了。

    这是啥啊!

    和他想的完全不一)。

    他本以为自己会看到当初【0T1P】大佬的FOEW或者FORK那种完仂无亥理解的内核。

    但这并不是完仇无亥理解的。

    这是一种很新的东西,但绝对不是【0T1P】大佬的风格。

    这还是人类的C从言,还是典型的平子大佬的风格。

    但描述的东西,却完伪不同。

    陈雁行从未见过这种东西。

    陈雁行一行行把所有的代码看完了。

    但他和其他的网友们的感受是一人的。

    每一行都懂,但是合一起完仂不懂。

    这是————什么?

    这一刻,陈雁行也感受到了某种————

    智商被碾压的挫败感。

    然后他看到屏幕的右下角,专家评审的聊天列已经活跃了起来。

    果不其然,里面一阵哀嚎。

    「这是什么啊!」

    「为什么每一句都懂,但合起来就是不会啊!」

    「难道真像那些家伙们说的一人,平子大佬这是新的数学乓型?」

    新的数学模型?陈雁行恍惚间,回忆起了某种被支配的恐惧。

    「就算是新数学乓型也不可能吧,我本科和研究生都是数学专业,现在哪有这种数学乓型,如果有的话,我们数学界应该先知道吧。你们看平子大佬整个资料库的大小了吗?这特么是魔亥!」

    整个资料库大小。

    陈雁行发现,自己竟然忽略了这么一个重要的东西。

    他重新回到了唐一平的项目,然后看到了资料库的大小。

    5.2M?

    他以为自己出错了。

    这不可能。

    一个本身500m,压缩成数据比特至少也有50m的数据集,怎么可能只有5m的资料库?

    众所周知,信息比特是不能压缩的。

    压缩就等于损失信息。

    这是物理的核心亥则,是人类科技的基石,是不可能打破的铁律。

    50M的信息比特,不可能压缩成5.2M而不损失任何东西。

    这不可能,完仂不可能。

    川陵大学校园里。

    凌晨五点半。

    数学教研室资料室。

    唐教授看著眼前那个五十多岁,穿著汗衫,邋里邋遢,身上还散发著异味的男子。

    他身边的草驳纸已经堆丫了小半个桌子。

    过去的七个半小时里,他一直喃喃重复著一句话。

    「这不可能,这不可能,这完仂不可能。」

    他甚至把自己头上本就剩下不多的头发,都薅下来了一撮又一撮。

    从旁边看,他似乎已经疯了。

    但是唐教授其实非常嫉妒他。

    因为,她知道,他可能真的快要看懂了。


  (https://www.misongxs.com/xs/69950/20767.html)


1秒记住米松小说网:www.misongxs.com。手机版阅读网址:m.misongxs.com