「我懂了。」
楚戈的声音有些发抖。
「抛弃资料库的关系查询,把所有的关系表抽出来,在内存里维护一个稀疏矩阵,所有的查询,全部在内存里做向量相乘,算出结果後,再拿用户ID去资料库里提头像和名字。」
「对。」
陈拙应了一声。
「但是有个问题。」
楚戈的程式设计师思维迅速抓住了漏洞。
「A认识B,B认识C,C又认识A,这在图论里是个环,如果向量一直乘下去,会不会无限循环,把算力耗死?」「楚戈。」
陈拙在电话那头叹了口气,语气里带着点无奈。
「这是工程问题,不是数学证明题,向量乘出来的结果里,凡是数值大於0的,你顺手用个哈希表把1D记下来,下次乘的时候遇到已经记过的,直接跳过不就行陈拙轻轻摇了摇头。
「你是个写代码的,别指望数学公式连你拉屎用几格纸都算清楚,用点你程式设计师的常识好吗?」楚戈听着电话里那点调侃,突然咧开嘴乐了。
「行,哥哥我承你这个情了,这回算我欠你的。」
楚戈把那张泡面盖子折了两下,小心翼翼地塞进贴身的口袋里。
「过完年回科大,我请你吃一个月的食堂小炒,先挂了,我得赶紧把这个底层的内存守护进程写出来。」没等陈拙说话,电话里传来了嘟嘟嘟的忙音。
陈拙放下话筒,摇了摇头,嘴角带着一抹笑意。
他转过身,走向厨房去拿碗筷,准备吃晚饭。
距离泽阳市一千多公里外的京城。
中关村附近的一栋破旧居民楼里。
屋子里没开灯,只有三四显示器散发着惨白的光,窗外偶尔闪过几道绚烂的烟花,照亮了满地的菸头和吃剩的外卖盒。汪兴裹着一件棉服,整个人窝在电脑椅里,双眼布满血丝,死死盯着屏幕上的後日志。
他们想在这个网际网路的荒蛮时代,做一个真正意义上的实名制校园社交网站,点子是极好的,几个汪兴甚至已经靠着PPT拉到了一笔几十万的天使投资。但是技术瓶颈卡死了他们。
明天就是大年初三,投资人要求看一个承载五百人同时在线的系统Demo。
汪兴已经三天没合眼了。
只要并发量一上来,好友的好友这个核心功能的资料库查询,就会像雪崩一样拖垮整个系统。屏幕右下角的MSN图标突然跳动了起来。
汪兴布满血丝的眼睛动了一下,握着滑鼠点开。
是楚戈,那个远在徽州,被他拉来当免费技术外援的科大变态黑客。
「老楚,别费劲了。」
汪兴敲了一行字发过去,手指有些僵硬。
「我们试了加缓存,试了建索引,没用,关系型资料库处理不了这种多级网状查询,硬体扛不住。」几秒钟後,楚戈发过来一个压缩包。
只有不到Z0KB。
紧接着,楚戈的消息弹了出来。