把 13 亿中国人民都拉到一个微信群里,在技术上能实现吗?

25 评论 22966 浏览 47 收藏 10 分钟

把 13 亿中国人民都拉到一个微信群里,在技术上能实现吗?一起来文中看一下鹅厂的开发小哥哥的回答~

总有些脑洞大的朋友向我们提出奇奇奇怪的问题,比如前两天就有人问:

“把 13 亿中国人民都拉到一个微信群里在技术上能实现吗?”

听到这个问题,全厂的人都炸了。要知道一个微信群最多只能有500人啊,QQ群也只有2000而已。当你有机会加入一个2000人QQ群的时候,你就已经感受到“信息爆炸”的可怕……

13亿人的微信群?Are you sure?

然鹅,鹅厂的工程师居然有人跳出来认认真真地做了回答。喏,就是下面这位开发小哥哥,他给出了一个知乎万赞的回答,请好好欣赏他的灵魂作画!

先说结论:也许可以实现,但你会什么都看不见。

根据2017年《微信数据报告》的公开数据[参考1]

2017年9月,微信日均登陆9.02亿人,日均发送消息380亿次。

这意味着平均每人每天发送信息42条,如果全国人民(对了,现在全国人口已经接近14亿)在同一个群里说话,这个群每天出现的信息就高达:

这么多信息仅仅是匀速发送的话,考虑到大家的睡眠,睡觉的8小时不算,那么手机里每秒要接收的信息就是:

哇塞,每秒超过100万条啊!目前主频最高的手机CPU之一,高通骁龙845有2.8GHz的处理能力[参考2] ,一共是8核,如不计算安卓系统、显示刷新、网络IO等CPU操作的话,每条信息能分配到的计算能力是:

这是什么概念?

全球第一款微处理器是1971年英特尔推出的Intel 4004[参考3],这个老古董的主频也有108KHz啊,所以21.9KHz就是啥也干不了。

幸好IT界有个摩尔定律:每18个月CPU性能就能翻倍(或者价钱是一半)。虽然现有科技已经很难让主频提升(某牙膏厂拼命挤也只有5Ghz)。

但假设我们使用了黑科技提升主频,等到了2025摩尔定律失效时[参考4],我们的手机CPU主频应该达到:

看起来不错嘛,不过每条消息能得到的计算能力将达到:

呵呵,依然没有达到Intel 4004的水平,所以结果就是你等了7年,还是进不了这个全国群抢一个红包。

好吧,咱们让手机接入一个给力点的电脑, 比如说全球超算第一名的太湖之光,1千万个CPU核心[参考5]来帮忙处理这个宇宙第一大微信群。算力的问题总算有了着落。

我们假设平均每条消息有10个汉字,这大概相当于30 byte,算上应用层会加上一定的控制字符,再加上TCP/IP网络层的数据消耗大概是74 byte,取个整,平均每条消息有100 byte,每个byte 相当于8个bit。

这时每秒需要的网络带宽大约是:

如果有人发红包,需要的带宽就更大了。

理论上,4G网络能支持1000Mbps[参考6],但别忘了,是全国人民在同一个群里,而你周围的人也需要同样的带宽,这使得你附近的基站不堪重负,陷入瘫痪。

为了避免网络瘫痪导致你抢不到红包或者看群消息,你需要搬到一个周围没有人的基站,比如:放暑假了全校只有你还没回家的时候。

不过运营商的日子就不好过了,因为这一秒全国上下的流量就达到了惊人的:

这相当于2017 4月份的全国移动数据总流量的65.7%[参考7],意味着每18秒就能用完全国一年的流量 。运营商瑟瑟发抖.gif

如果把1.146Ebit数据用2TByte 3.5英寸硬盘(20mm高)装起来,然后叠起来,有1433.25m,相比之下,全球最高楼——迪拜的哈里发塔只有区区828m。

当然,如果确实有需要,我相信电信运营商们肯定砸下重金为你建设全世界最大的宽带网络。

不过,接下来该花钱的就不是运营商——而是腾讯了。

为了处理这1.146Ebps 的流量, 腾讯需要准备11466万套交换机和服务器。

目前一台大厂4口万兆交换机售价大约是4000元,一台便宜带万兆口的服务器则大概需要10000元,这两项加起来的费用是:

呃,仅仅这两项就相当于深圳2014年全年的GDP[参考8]。

这里还不包括网线、电线、服务器机架、机房托管、电费、运行支出……

这么多设备的存放也是个问题,一台带万兆(10Gbps)口的2U服务器有88.9mm高,这样叠起来就有:

这差不多是中国到美国的飞机航线距离啊,用来修铁路也是够够的了。

好了,有了这么多设备加持,这下你终于可以愉快地进了群。但你惊讶地发现,屏幕上除了白色,什么都没有——这是因为你的眼睛没办法接收这么快的数据!

人眼的视觉暂留时间是100-400毫秒[参考9] ,而我们这个群每秒钟就要显示102万条信息,每条消息停留的时间只有大概0.0001毫秒。相比之下,电影、电视都有41毫秒。

因此你还没来得及看清消息,它就已经消失了,最后只留下一团白色的色块在屏幕的正中央。

参考资料:

[1]2017微信数据报告:日登录用户超9亿 日发送消息380亿次

[2]高通骁龙 845 平台 | Qualcomm

[3]Intel 4004 维基百科

[4]Moore’s law – Wikipedia

[5]The 48th edition of the TOP500 list

[6]4G 维基百科

[7]2017年4月通信业主要指标完成情况(一)

[8]深圳统计年鉴2017

[9]视觉暂留 维基百科

 

作者:MAX,微信公众号:腾讯(ID:tencent)

链接:https://www.zhihu.com/question/293021546/answer/487157602

本文由 @腾讯 授权发布于人人都是产品经理,未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
海报
评论
评论请登录
  1. 两个人一天聊天纪录是100条,然后把200个这样的人放一个群里,聊天记录一天能上10000条???不考虑重复事件。譬如两个人的聊天,我问中国多少人,对面一条信息过来14亿。要到2000人大群,难道1999人都回复我14亿? 有过群使用的人都知道,群里面永远都是一个话题几个人在讨论。

    来自广东 回复
  2. 都加在一个群里,然后禁言不说话,默默的看头像就好了。

    来自上海 回复
  3. 脑洞打是好事!

    来自甘肃 回复
  4. 厉害了

    来自山东 回复
  5. 你以为13亿人在一个群里说话会跟平时说话数的总和吗?这个回答很显然就是偷换概念,根本就不是问题的回答。

    来自广东 回复
  6. 13亿人在一个群里会聊什么呢,我反正一句话不说

    来自广东 回复
  7. 爆吧,帝吧出征寸草不生

    来自浙江 回复
  8. 灵魂画家

    来自河南 回复
  9. ˙真心有趣 笑死我了。哈哈哈

    来自广东 回复
  10. 哈哈哈哈哈哈哈哈真有趣

    回复
  11. 厉害了

    来自北京 回复
  12. 真想看看13亿人在一个微信群里的感觉哈哈~

    来自天津 回复
  13. 技术活儿,赏 🙂

    来自福建 回复
    1. 一剑天门开!

      来自山东 回复
  14. 有趣

    来自上海 回复
  15. 直播平台不是已经实现了吗

    回复
    1. 机智

      来自北京 回复
    2. 直播平台难道真的可以同时容纳接近14亿人进入同一个房间观看?
      划重点:同一房间~~~~哈哈哈哈

      来自广东 回复
    3. 确实直播平台就够用了,这个问题就有问题。14亿人需要在一起的时候只可能是接受消息,也就是说只需要看就好了。而这个新问题在奥运会和世界杯的时候已经解决过了。

      回复
  16. 第一个算式有点问题吧?!(平均42条消息,但是都不是在一个群里面发送的呀~)

    来自湖北 回复
    1. 666

      来自江苏 回复
  17. 描述的也是很生动形象了

    来自河南 回复
  18. 哈哈哈哈哈

    来自广东 回复