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

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


实际上,根据国家统计局的数据,截至 2017 年底,中国大陆总人口为 13 亿 9008 万人(包括 31 个省、自治区、直辖市和中国人民解放军现役军人,不包括香港、澳门和台湾以及海外华侨人数),早已超过 13 亿。安全


目前,微信群组成员人数上限为 500 人,把近 14 亿中国人都拉到一个微信群,从技术的角度考虑现实吗?须要多少台服务器?
服务器


并且在一个 14 亿人的群里,要怎样抢红包?手机会不会爆炸?欢迎你们收看官方吐槽系列~微信


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


根据 2017 年《微信数据报告》的公开数据 :2017 年 9 月,微信日均登录 9.02 亿人,日均发送消息380亿次。网络


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


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


哇塞,每秒超过100万条啊!目前主频最高的手机CPU之一,高通骁龙845有 2.8GHz 的处理能力,一共是8核。性能


如不计算安卓系统、显示刷新、网络IO等CPU操做的话,每条信息能分配到的计算能力是:大数据


这是什么概念?全球第一款微处理器是1971年英特尔推出的Intel 4004,这个老古董的主频也有108KHz啊。因此21.9KHz就是啥也干不了。3d


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


但假设咱们使用了黑科技提高主频。等到了 2025 摩尔定律失效时,咱们的手机 CPU 主频应该达到:


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


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

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


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


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


若是有人发红包,须要的带宽就更大了。


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


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

不过运营商的日子就很差过了,由于这一秒全国上下的流量就达到了惊人的:


这至关于 2017 年 4 月份的全国移动数据总流量的 65.7%,意味着每 18 秒就能用彻底国一年的流量。


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


固然,若是确实有须要,我相信电信运营商们确定砸下重金为你建设全世界最大的宽带网络。


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


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


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


呃,仅仅这两项就至关于深圳2014年整年的GDP。


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


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


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

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


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


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


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

下面是一些网友留言:

@大哥有柔情:

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


@后知后觉:

已经作到了,14 亿人拉到一个微信群,你们看到的都是新闻联播。


@bluecat:

简单的说,你的手机会立刻崩溃,由于它承载不了一秒钟的信息量。


@三毛鱼

能够实现,不过要加几条限制:

①全部微信帐号强制加入到这个微信群。

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

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

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

这样就能够实现了,技术上没有难度。


@程墨Morgan

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


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


@世安先生

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



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


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


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


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


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


其次,传输,这是我以为问题最小的一个环节,为何呢?解决了我的终端的问题以后,我的的数据传输量并不大,现有的传输网络彻底能够知足。


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


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


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


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


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


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


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


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

相关文章
相关标签/搜索