“最近,知乎上有一个非常热门的问题:“把 14 亿中国人民都拉到一个微信群里在技术上能实现吗?”

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

根据 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 性能就能翻倍(或者价钱是一半)。虽然现有科技已经很难让主频提升(某牙膏厂拼命挤也只有 5 Ghz)。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

好了,有了这么多设备加持,这下你终于可以愉快地进了群。

但你惊讶地发现,屏幕上除了白色,什么都没有——这是因为你的眼睛没办法接收这么快的数据!

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

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

小编精选了一些网友留言:

@大哥有柔情:

14 亿在一个群并不可怕。可怕的是,每逢节日群里都会让群主发红包!

@后知后觉:

已经做到了,14 亿人拉到一个微信群,大家看到的都是新闻联播。

@bluecat:

简单的说,你的手机会马上崩溃,因为它承载不了一秒钟的信息量。

@三毛鱼

可以实现,不过要加几条限制:

①所有微信账号强制加入到这个微信群。

②微信群只能有限的几个人发言,其他人不能发言。

③微信群里只能在每天固定时间段发消息。

④其他微信群在固定时间不能发消息,或者只能转发这个微信群的消息。

这样就可以实现了,技术上没有难度。

@程墨Morgan

“拉”到一个群里没啥不难实现的,反正用户信息都在服务器上,建一个包含所有用户微信号的群也就是添加一个记录而已。

但是,这个群千万不要让任何人都能发言,就以我国人民的多样性,各种话唠、贴图狂人、广告狂人......海量信息瞬间就可以把服务器、运营商网络和你手机的电池击溃。

@世安先生

讲真,单从理论上来说目前的技术还是可行的,咳咳,我要装逼了。

看了别的答主的回答,说人、终端、传输、处理、存储、分析等等各方面均有缺陷或者短板,跟不上大批量的数据,其实个人觉得实施起来也还是有得搞的,只是成本和利润之间的关系罢了。

首先,得考虑人的因素,多少多少亿的信息量对于某个特定个体来说价值无限接近于 0,我个人根本不关注这些信息,因为获取信息的效率太低了。

这就导致了百分之九十九的人直接忽略了这个群的存在,剩下的每天这个群里的消息无非就是置顶公告,置顶新闻,红包和闲聊斗图,浏览公告和新闻。

考虑到并发的问题,一般现在的服务器都可以做到,毕竟有大把的新闻 App 都可以做到;红包,做个算法随机分配吧,也别抢了,抢会严重影响体验,给十亿用户随机分配一段数据应该难度也不太大。

剩下的就是斗图闲聊,数据直接云存储在服务器端,分析处理总结出来个中心思想每多少秒多少秒推送给个人用户一次,就差不多了,需要详细信息的上服务器检索,个人觉得对个人终端的压力也不会太大。

其次,传输,这是我觉得问题最小的一个环节,为什么呢?解决了个人终端的问题之后,个人的数据传输量并不大,现有的传输网络完全可以满足。

服务器端的传输,要看这服务器怎么个建法,如果集中式处理和存储,就只能用百 G 专线,建个三五条完全够了。

只不过相应的配套交换机路由器要建一套庞大的系统出来。如果是分布式存储和处理,10G 的甚至 GE 的专线都够。这是传输。

第三,处理,如果非得把大批量的数据集中处理,就得建设一套国内最大甚至世界最大最复杂的数据中心才能够承载这套系统。

但是如果分布式处理的话,我相信现在的系统也够用,毕竟现有的运算量已经这么大了,而有这个群之后数据量也绝对不会爆炸式增长。

第四,存储,处理的工作能够完成存储肯定也不是问题,甚至可以将数据破碎后存储在个人终端上,将投资设备的矛盾转嫁到数据安全和管理上。

第五,数据分析,这一点才是重中之重,难点中的难点,如何有效的分析提取如此大量数据中的有用信息并推送给特定的个人才是核心关键。

虽然现在技术还没有大面积商业化,但我相信这种技术是肯定已经有试用的甚至是已经商用的存在了,只不过公众不太清楚而已,毕竟这种东西仔细想想还是有点恐怖的。

总之,如何实现这个系统或者说建好这个群,无非就是做好需求与资源之间矛盾的转嫁,把存储需求量大与投资大之间的矛盾转嫁到数据安全与运营管理上,把大数据量传输分散化,把大量的数据进行分析提取后定向推送,最核心的投资也就是整套智能有效的大数据分析系统。

(ಥ_ಥ)不过……话说这么搞的话不就是搞了个有 14 亿关注量的公众号嘛…d(ŐдŐ๑)好了,我装逼装完了,你们打的时候下手轻点,别拿砖头,别提 40 米青龙偃月大关刀......

今天给大家推荐两份来自字节跳动大佬的算法进阶指南,据说有不少小伙伴靠这份指南成功掌握了算法的核心技能,拿到了 BAT offer。希望对大家有帮助。

第一份资料是 70K Star 的《labuladong 的算法小抄》(作者 labuladong)。

先来给你们看看里面具体都有哪些内容:

现在这本 PDF 免费分享给你,你可以关注下方公众号回复 算法 来领取这本 PDF。

▲点击卡片进行关注▲

回复「算法」,获取PDF

我差点信了......相关推荐

  1. 两个Long类型真的不能直接用或比较么?其实可以

    2019独角兽企业重金招聘Python工程师标准>>> 当我在Google输入"Long类型的比较"时,会出现多如牛毛的与这个问题相关的博文,并且这些博文对此问题 ...

  2. 笔记本插入网线接口没反应

    前两天电脑不知怎滴插入网线就是读不出来,这个时候我还以为网线接口处太松了事接触不良 不管怎么尝试都没用,百度了没有具体的结果  还有的让拿去修(差点信了) 就在我没有一点办法的时候,无意间打开了网络和 ...

  3. 深聊性能测试,从入门到放弃之:如何对IO进行性能调优

    1.引言 2. 硬盘知识 2.1 磁盘原理 2.2 磁盘接口 2.3 磁盘读写 2.4 磁盘KPI 2.5 计算 2.5.1 IOPS计算 2.5.2 传输速率/吞吐率计算 2.6 IO延时 2.6. ...

  4. 心情不美丽,爬了一些美图,独自欣赏!

    小屌丝:鱼哥,咋了, 心情不美丽? 小鱼:嗯, 小屌丝:晚上撸串去?? 小鱼:不 小屌丝:蹦迪?? 小鱼:不 小屌丝:喝酒?? 小鱼:不 小屌丝:猎艳?? 小鱼:- !! 于是乎~~ 一段代码上来, ...

  5. 愚人节的幽默感,我只服阿里云......

    愚人节一到,一年一度科技公司组团畅聊(chui)未来(niu)的时候又到了! 平时碍于技术水平没达到或者现实不可抗因素不敢瞎说的话,到了愚人节这天全都雄纠纠气昂昂地组团开服忽悠了!今年,到现在为止最服 ...

  6. 网友自制 MIUI 13 海报被疯传

    本文转载自IT之家 IT之家 7 月 8 日消息 今天,一份疑似 MIUI 13 发布会的宣传海报在微博被疯传,海报显示小米 MIUI 13 将于 8 月份正式发布.对此,小米集团公关部总经理王化予以 ...

  7. 2021年度IT吃瓜指南

    一月 1月7日 -特斯拉CEO马斯克成全球首富(凡尔赛.马) 1月12日 -微软和思科等公司的源代码被公开出售(打包价100万美元) 1月16日 -39岁网络技术员入住养老院(实锤了,39岁程序员已经 ...

  8. 关于node版本16+ 安装依赖会出现error的问题

    一.问题描述 首先正常 yarn add .,发现依赖中node-sass无法正常安装导致编译中断,于是单独安装node-sass,报错如下 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  9. 一键反推食谱,与狗对话,识别女票表情…愚人节,AI 也被玩坏了...

    掐指一算,又是一年 4 月 1 日愚人节. 这一天,是自带调侃和谅解属性的一天.想在愚人节搞点事情的,不仅仅是那些想要表白却害怕被拒绝而导致尴尬的年轻人,也不仅仅那些推出奇葩新品来吸引消费者眼球的商家 ...

最新文章

  1. pandas describe函数_PANDAS: 新手教程 一
  2. 人工智能、大数据的广泛应用,算法推荐如何守好边界
  3. (已解决)AttributeError: ‘PrecisionRecallDisplay‘ has no attribute ‘from_predictions‘以及查看sklearn版本
  4. window系统 telnet报错:‘telnet‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
  5. 【错误记录】eclipse,android,logcat日志无法打印,真机调试
  6. 启明云端分享|ESP32-S3 Smartconfig一键配网
  7. 原子操作、互斥锁、读写锁
  8. SUS安装配置简明图解攻略
  9. oppo手机快速截屏的方法
  10. 代码对比工具 mac
  11. 给马斯克群发卫星算本账,星链计划跟5G有可比性么?
  12. 【C#】打印机ZPL指令,打印文本,中文,条码,图片
  13. 简述MES系统的9大核心功能模块
  14. 中国科学报:吴文俊的数字之舞
  15. firefox正在安装组件,以便播放此页面上的音频或视频
  16. 网络知识梳理--OSI七层网络与TCP/IP五层网络架构及二层/三层网络
  17. 科技论文写作投稿相关
  18. 少年之文明与国之文明——---从奥运会看国人素质之飞跃
  19. GRE词汇统计大全(一)
  20. 笔记本硬盘读取测试软件,电脑硬盘怎样检测 电脑硬盘故障检测软件【详解】...

热门文章

  1. delete 多表删除的使用(连表删除)
  2. Jon Skeet's C# and .NET articles and links
  3. PHP base64 编码转化图片并进行指定路径的保存和上传处理
  4. RK3399 Android7.1将序列号写死固定
  5. Ubuntu18.04安装UHD驱动+GNU Radio的问题总结1
  6. 各加密模式的演示(ECB,CBC)
  7. 吴甘沙:写在驭势科技六周年丨再向虎山行
  8. [Flink] 容错机制与状态一致性机制
  9. 视频教程-手机APP开发/WebApp应用-Webapp
  10. 路由器无线中继设置教程