第九十二章 露一手(下)
    一众领导寒喧完,重新回到了座位上,把讲台留给了顾川。

    “不要紧张。”顾校见顾川一脸古怪,笑着鼓励道,“就当提前答辩了。”

    什么叫提前答辩…顾川才入学多久…

    后排的许倩媛的心一下就被揪了起来,看着在讲台上做着深呼吸的顾川,双手交叉,暗暗祈祷。

    但其实,这时候的顾川并不紧张。

    他只是有点似曾相识。

    他上辈子的岗阶是4-2,因为算法部门在字节的特殊地位,他的实际权限相当于vp(副总裁)。

    说是十来个人之下,十几万人之上,还真没什么问题。

    上次给人象这样“说课”是在哪里?会议室吧?

    底下的人是清北硕博还是硅谷海归来着?

    他捻起一支粉笔,再次朝领导们鞠了一躬,又看了一眼后排眼神有些担心的许倩媛。

    这应该是不少学生想象过的场景吧,自己站在讲台上,下面的导师握着笔,喜欢的女生还坐在后排看着。

    “我准备好了。”他停止胡思乱想。

    “第一个问题我来吧。”顾校主场,又是校长,需要他先来定调,

    “小顾啊,咱们先不聊后面那些复杂的哈希环,就聊你论文的第一部分。

    你的思路很巧,论文里举的例子也很有趣。

    传统的 select轮询,就象是宿管挨个敲整栋宿舍楼的房门,问有没有垃圾要倒,这样效率太低,处理太慢。

    不如有垃圾的宿舍自己把垃圾打个包,放在走廊上排好队,这样宿管直接收就行。

    这也就是你说的 O(1)。

    这个比喻,我没理解错吧?”

    见顾川点头,顾校笑了笑,“那我这里就有个问题了,如果某一天,这一万个宿舍在同一秒钟,全都有垃圾要倒。

    你的那个就绪队列里,瞬间塞满一万个任务,应用层程序难道不需要把这一万个任务挨个处理一遍吗?

    既然最后还是要老老实实处理一万次,总耗时依然是随着连接数线性增长的。

    那你所谓的 O(1)优势,到底体现在哪里呢?

    这难道不是一个偷换概念的伪命题吗?”

    “是的。”顾川掂了掂手上的粉笔,知道顾校这是半测试半给自己抬轿子,

    “瞬间一万条信息,处理消息的计算时间依然是O(N)。”

    “但我想解决的问题,从来不是处理信息,而是等待。”

    “比如…QQ。”顾川轻笑,

    “假设现在一百来个QQ挂在网上,但其实中间有九十万都是静默状态,用传统轮询,cpu要把算力放在这些静默的QQ上,不断询问‘你要不要发送消息’,这就导致单台服务器能承载的用户量减少,想要解决,唯一的办法就是多买服务器。”

    “而在我的设想中,这九十万个静默状态下的QQ根本不用搭理,直接处理已经发送的消息就行。”

    实际上,这正是小马哥看到这篇论文会急忙来找他的原因。

    顾川的论文,在他眼里,通篇只有两个字,省钱。

    可惜顾川根本不会做资敌的事。

    小马哥你还是老老实实卡着吧,这对大家都好。

    “很好。”顾校满意的点了点头,朝陈健龙点了点头,“那么第二个问题,小陈,你来吧。”

    “好,”陈健龙朝顾川笑了笑,“顾川,我花了点时间看了一下你说的哈希环概念。”

    “你说当网格里有服务器A物理宕机了,那么原本打向A的流量,会顺时针查找,平滑地转移给下一个相邻的节点B。

    数学上,这确实避免了全网数据的重新洗牌,非常好。”

    “但是在实际操作里,这是要出大事的。

    既然是海量并发,节点B原本就承担着属于它自己的满负荷流量。

    现在A死了,你把A的全部流量瞬间砸到B的头上。B的CPU和网卡绝对扛不住这突如其来的双倍压力,它会在几秒钟内被当场压垮。

    类似的,B死了,A和B的流量又会全部砸向下一个节点C,同理,C也会瞬间被击穿,循环往复,整个系统会瞬间崩溃。

    我想知道,你考虑过这个问题吗?”

    “当然。”顾川在黑板上画了一个圈,标注了ABC,

    “如果把物理服务器1:1的挂在这个环上,那炸一台机子,其他的必炸。”

    “所以…”

    他用在ABC旁边哒哒哒的开始画点,

    “我们需要在数学逻辑和物理硬件之间,再加一层,我管它叫虚拟节点。”

    “每一台真实的物理服务器,我给它加之不同的前缀盐值,进行哈希

本章未完,请点击下一页继续阅读>>