关注华体会智能掌握最新行业动态与资讯
当前位置:首页 >  新闻中心 >  公司新闻

华体会,云计算死亡倒计时,未来属于分布式的点对点网络

发布日期:2023-11-30

  即便从收集看,P2P也不是新概念,P2P是互联网全体架构的根本。互联网最根基的和谈TCP/IP并没有客户机和办事器的概念,所有的装备都是通信的同等的一端。在十年之前,所有的互联网上的系统都同时具有办事器和客户机的功能。

  在云计较成长一片火热的时辰,英国数字征询公司Red Badger的手艺主管Viktor Charypar却在VentureBeat上发文暗示,云办事将会迎来末日。并指出点对点收集将会是未来的成长标的目的。他暗示,云将会走向终结,这是一个斗胆的结论,或许听起来有点疯狂。但请容忍我,让我说下去。

  一向以来,都有如许的一个保守不雅点:运转办事器的利用法式,不管是Web利用仍是挪动利用的后台,将来城市在云端。亚马逊、谷歌和微软在他们的云办事中添加了多种东西,让在此中运转的软件办事变得愈来愈简单便利,是以,在AWS、GCP或Azure上托管代码是你能到的最好的工作——它便利、廉价、轻易实现主动化,你能够矫捷地节制范围……

  那末,为何我要猜测这一切城市竣事呢?有这么几个缘由:

  第一,它没法知足持久的扩大要求。

  建立一个可扩大、靠得住、高可用性的web利用法式,即便是在云中,也是相当坚苦的。假如你做得不错,让你的利用取得了庞大成功,那末重大的范围将会耗尽你的金钱和精神。即便你的营业很是成功,你终究也会到达云计较的极限:计较机的计较速度和存储容量的增加速度跨越了收集的带宽。

  疏忽收集中立的争辩,这对年夜大都人来讲可能不是问题(除Netflix和亚马逊),但很快就会呈现这个状态。跟着我们的视频质量从HD到4K到8K,我们正在所需要的数据量正在年夜幅增加,并且,很快就会呈现VR数据集。

  这之所所以一个问题,首要是由于我们组织收集的体例。有很多用户想要取得内容和利用法式,而只要相对较少的办事器具有这些法式和内容。好比,当我在Slack上看到一张弄笑的照片时,想向坐在我身旁的20小我分享,但他们都必需从托管办事的办事器上下载,办事器需要发送20次这个照片。

  跟着办事器转移到云端,好比亚马逊或谷歌的数据中间的亚马逊或谷歌的计较机,接近这些处所的收集需要有使人难以相信的吞吐量来处置所有这些数据。另外,还必需有年夜量的硬盘来存储每一个人和CPU数据,然后经由过程收集将数据传输给每个想要的人。跟着流媒体办事的鼓起,环境变得更糟。

  所有这些勾当都需要年夜量的能量和冷却,使全部系统效力低下、价钱高贵,对情况也晦气。

  第二,它是集中而懦弱的。

  集中存储我们的数据和法式的另外一个问题是可用性和持久性。假如亚马逊的数据中间被一颗小行星撞了,或被龙卷风摧毁了怎样办?或,假如它在一段时候内停电了,那又会如何呢?存储在其机械上的数据此刻不克不及暂停拜候,乃至不克不及永远丢掉。

  我们凡是经由过程将数据存储在多个位置来减缓这个问题,但这只意味着更多的数据中间。这可能会年夜年夜下降不测丧失的风险,但你很是很是关怀的数据又该怎样办呢?你的婚礼视频,你孩子成长的照片,或主要的公共消息来历,好比维基百科。所有这些消息此刻都存储在云端——在Facebook、Google Drive、iCloud或Dropbox等网站上。当这些办事住手运营或掉去资金时,数据会产生甚么转变?即便它们不会成长到这一步,但也限制了你拜候本身数据的体例,你必需去利用它们的办事,当你和伴侣们分享的时辰,他们也必需经由过程这项办事。

  第三,它需要信赖,但没法供给保障。

  利用云办事,你要让伴侣相信,他们获得的数据是你发送的,并且这个数据是经由过程值得信赖的中心人传送过来的。在年夜大都环境下,这都可以或许良性运转,也能够接管,但我们利用的网站和收集必需要注册才能正当运营,监管部分有权利逼迫它们做良多工作。在年夜大都环境下,这是一件功德,能够用来帮忙处理犯法或从收集上删除不法内容,但也有良多环境下,这类权利被滥用。

  就在几周前,西班牙当局竭尽所能禁止加泰罗尼亚地域的自力公投,此中采纳的办法就包罗封闭消息网站,告知人们该去哪里投票。

  第四,它让我们的数据更轻易蒙受进犯。

  高度集中的互联网真正恐怖的一面是小我数据的集中化。那些为我们供给办事的年夜公司都有年夜量的数据——这些数据包括了足够的消息,能够猜测你将要采办甚么,你会投票给谁,你可能会买房子,乃至你可能会有几多孩子。这些消息足以用你的表面去打点一张信誉卡、一笔贷款,乃至是用你的名字买一所房子。

  并且,你也可能会赞成。究竟,你选择了它们的办事,你就只能信赖它们。但这不是你需要担忧的。你需要担忧的是其他人。本年早些时辰,信誉陈述机构Equifax丢掉了1.4亿名客户的数据,这是汗青上最年夜的数据泄漏事务之一。这些数据此刻已公然。我们能够把这看做是一个十年一次的事务,假如我们加倍谨慎的话,这类环境本能够避免,但愈来愈较着的是,像如许的数据泄漏很难完全避免。并且一旦呈现就过在危险,没法容忍。真正禁止这类事务再产生的独一法子是,一最先就不搜集这么年夜范围的数据。

  那末,甚么将代替云呢?

  首要由客户端-办事器和谈(如HTTP)撑持的互联网和基在对中心机构(如TLS)的信赖的平安性是出缺陷的,而且会致使一些根基上难以处理或没法处理的问题。此刻是时辰去寻觅更好的工具了——一个没有其他人能完全存储你的小我数据、年夜媒体文件遍及全部收集的模子框架、全部系统完满是点对点和无办事器的(我不是指那种云托管意义上的“无办事器”,我的意义是真实的没有办事器)。

  在这个范畴,我已浏览了年夜量的文献,而且已很是确信点对点是我们将来不成避免的成长标的目的。点对点收集手艺是用和谈和策略来代替我们所晓得的收集的建立模块,处理我上面提到的年夜部门问题。方针是完全散布式的,永远冗余的数据存储,每一个介入收集的用户都在存储此中一些可用数据的副本。

  假如你传闻过BitTorrent(比特流),那末下面这些内容听起来应当会很熟习。在BitTorrent上,收集用户不需要任何中心机构授权便可以将年夜数据文件分成更小的块或片断(每一个块都有一个独一的ID)。要下载一个文件,你只需要一个“奇异”数字,也就是一个哈希(hash),即内容的指纹就好了。然后,你的BitTorrent客户端将会依照“内容指纹”找到那些具有文件片断的用户,并从他们那边把一个个文件片断下载下来,直到你具有所有的片断。

  一个风趣的点是若何去婚配用户。BitTorrent利用了一种名为Kademlia的和谈。在Kademlia,收集上的每一个对等点都有一个独一的ID号,其长度与独一的块ID不异。它会将一个带有特定ID的块存储在一个节点上,该节点的ID与该块的ID“最接近”。块和收集对等点的随机ID,在全部收集中存储的散布应当是相当分歧的。不外,块ID其实不需要随机选择,而是利用一种加密散列——这是块自己内容的独一指纹,这是有益处的。包管这些块是可寻址的。这也使得验证块的内容加倍轻易(经由过程从头计较和比力指纹),并可以或许包管用户不成能下载原始的数据以外的其他数据。

  另外一个风趣的特征是,经由过程将一个块的ID嵌入到另外一个块的内容中,你能够将两者以一种不会被窜改的体例毗连在一路。假如链接块的内容产生转变,它的ID将会改变,链接也会被粉碎。假如点窜了嵌入式链接,那末包括块的ID也会随之改变。

  这类将一个区块的ID嵌入到另外一个区块的机制,使得建立如许的区块链成为可能(好比为比特币和其他加密货泉驱动的区块链),乃至是更复杂的布局,凡是被称为有向无环图(Directed Acyclic Graphs),简称DAG。(在Ralph Merkle发现了这类链接以后,凡是被称为“Merkle链接”。所以,假如你听到有人在谈论Merkel DAGs时,你大要能晓得他们在说甚么。)Merkle DAG的一个常见例子就是Git存储库。Git将提交汗青和所有目次和文件都保留在一个庞大的Merkle DAG中。

  这就致使了基在内容寻址的散布式存储的另外一个风趣特征:它是不成变的。内容没法改变。取而代之的是,新的修订被存储在现有的修订版本旁边。在两次修订之间没有变动的块会被重用,由于按照界说,它们具有不异的ID。这也意味着不异的文件不克不及在如许的存储系统中复制,转化为高效的存储。所以在这个新收集上,每张并世无双的弄笑图片都只具有一次(虽然在全部群体中有多个副本)。

  像Kademlia,Merkle链和Merkle DAG如许的和谈,给我们供给了建模文件条理和修订时候线的东西,并在一个年夜型的P2P收集平分享它们。已有一些和谈利用这些手艺来建立合适我们需求的散布式存储。看起来很有但愿的是IPFS。

  名称和同享问题

  好了,经由过程以上这些手艺,我们能够处理我在最先时提出的一些问题:我们在毗连到收集的装备上获得散布式的、高度冗余的存储,这些装备能够记实文件的汗青,并在需要的时辰保存所有版本。这(几近)处理了可用性、容量、持久性和内容验证问题。它还处理了带宽问题——由于都是利用点对点传输数据,是以不会呈现办事器承受不了的环境。

  我们还需要一个可扩大的计较资本,但这其实不难:此刻每一个人的笔记本电脑手机都比年夜大都利用法式所需要的功能更壮大(包罗相当复杂的机械进修计较),并且计较凡是都是可伸缩的。是以,只需我们能让每台装备都为用户做需要的工作,就不会呈现年夜问题。

  所以此刻我在Slack上看到的弄笑图片能够来自坐在我旁边的同事,而不是来自Slack的办事器(在这个进程中没有逾越任何“海洋”)。不外,为了发布一张弄笑照片,我需要更新一个通道(channel)(也就是说,通道将不再是我发动静之前的模样了,它将会产生改变)。这个听起来相当简单的工作倒是全部系统中最难的部门。

  最坚苦的部门:及时更新

  一个实体的概念会跟着时候的推移而改变,这现实上只是人类专属的设法,让世界在我们的脑筋中具有次序感和不变。我们还能够把如许的实体看做是一个身份或名称,跟着时候的推移,它会显现出一系列分歧的价值(这是静态的,不成改变的)。。在电脑中摹拟消息是一种更天然的体例,会发生更天然的成果。假如我告知你一件事,我就不再能改变我对你说的话了,也没法子让你忘怀。例如,美国总统是谁,不会随时候而改变;只是会被一样性质(身份和名字)的其他现实(人)所代替。在Git的示例中,一个ref(分支或标识表记标帜)能够在分歧的时候点指向(持有一个ID和一个值)分歧的提交,并提交一个提交来替代当前所持有的值。Slack通道也代表了一种身份,跟着时候的推移,它的价值也在不竭增加。

  真实的问题是,我们其实不是独一一个具有通道的人。良多人试图发布动静和改变通道,有时是同时进行,需要有人来决议成果应当是甚么。

  在中间化的系统中,当前几近所有的web利用法式,都有一个中心实体来决议这个成果,并对事务进行序列化。但是,在一个散布式系统中,每一个人都是同等的,是以需要有一种机制来确保收集上可以或许告竣共鸣。

  对一个真实的散布式收集来讲,要想处理这个问题,最坚苦的问题就是我们今天正在利用的所有利用。它不但会影响并发更新,还会影响其他需要“及时”更新的更新——跟着时候的推移,“本相的单一来历”正在产生转变。这个问题对数据库来讲特别坚苦,它也会影响到其他要害办事,好比DNS。以分离的体例为特定的块ID或一系列ID注册一小我的名字意味着每一个介入者都需要赞成一个现有的名称有一个特定的寄义,不然两个分歧的用户便可以看到两个分歧的文件在统一个名称下。基在内容的寻址处理了机械的问题(记住一个名字只能指向一个特定的婚配内容),而不是人类的问题。

  在处置散布式的共鸣方面,有一些首要的策略。此中一个问题是,选择一个相对较小的“群体”司理,他们的机制是选出一个决议本相的“带领者”(假如你感爱好的话,看看Paxos和Raft和谈)。所有的转变都要颠末这些司理。这本色上是一个集中式的系统,能够填补收集中的中心决议计划实体或中止(“分区”)的丢掉。

  另外一种方式是像比特币区块链如许的基在验证的系统,在这类系统中,经由过程让用户处理一个“困难”来编写一个更新(例如,在Merkle链中添加一个有用的区块)来告竣共鸣。这个“困难”很难处理,但很轻易就可以查到,假如冲突依然具有,还需要一些额外的法则来处理。其他几个散布式的区块链利用了基在验证的共鸣,同时削减领会题所需的能源需求。假如你感爱好的话,你能够在BitFury这份白皮书中读到的相干的证据。

  针对具体问题的另外一种方式是环绕着CRDT——无冲突的复制数据类型,这在特定环境下底子不会蒙受共鸣问题的搅扰。最简单的例子是一个递增的计数器。假如所有更新只是“添加一条”,只需我们确保每次更新只利用一次,挨次就不主要,成果将是不异的。

  这个问题仿佛没有一个明白的谜底,可能永久也不会只要一个谜底,但有良多伶俐的人正在尽力处理这个问题,并且已有良多风趣的处理方案可供选择。你只能够对其进行衡量。这类弃取凡是表现在你“对准”的群体的范围上,并从你情愿让渡的共鸣中遴选出的一种特征——可用性或分歧性(或,从手艺上讲,是收集划分,但在一个高度散布的系统中,这仿佛很难避免,就像我们正在会商的系同一样)。年夜大都利用法式仿佛都撑持可用性而不是立即的分歧性——只需状况在公道的时候内是分歧的便可。

  公共文件收集中的隐私问题

  需要处理的一个较着问题是隐私问题。即若何在不公然的环境下将内容存储在散布式的集群中呢?假如它可以或许埋没工具,那末内容地址存储是一个不错的选择,由于为了找到某样工具,你需要晓得它的内容的散列。所以素质上我们有三个条理的隐私:公共的、埋没的和私密的。对第三个问题的谜底仿佛是在暗码学中 - 对存储的内容进行强加密而且要有“外在”的同享密钥(好比用纸分享、NFC装备传输或扫描二维码等)。

  依靠在加密手艺一最先可能听起来很冒险(究竟,黑客老是会发觉缝隙),但现实上并没有比我们今天做的更糟。现实上,这在实践中有可能会更好。企业和当局凡是以没法与公家分享的体例存储敏感数据(包罗数据所触及的小我)。相反,只要具有这些数据的组织所招聘的数目不多的员工才可以或许拜候,并且最少在暗码方面遭到庇护。凡是环境下,假如你能拜候存储这些数据的系统,你便可以具有所有这些数据。

  可是,假如我们转而以一种素质上是公然的体例来存储私家数据,那末我们就不能不庇护它(利用壮大的加密手艺),如许对任何取得拜候权限的人来讲都是欠好的。这个设法与平安相干软件的开辟者开源代码的初志是一样的,如许任何人都能够查看并发觉问题。晓得平安系统是若何工作的,不该该帮忙你打破它。

  这类对拜候的节制一个风趣特征是,一旦你授与或人拜候某些数据的权限,他们就会永久对数据进行点窜。固然,你能够随时更改加密密钥。这也其实不比我们今�����APP天的环境更糟,虽然它可能其实不较着:只需取得一些数据的拜候权限,任何人都能够复制它。

  这一范畴的风趣挑战是,在一群需要随时候推移而改变的人群中成立一个可以或许验证身份并同享私稀有据的杰出系统。例如,在一个私有的Git存储库中有一组协作者。这绝对能够经由过程一些私钥暗码和扭转密钥的组合实现,但让用户取得流利的体验多是一项挑战。

  从云到雾

  虽然要处理一些困难,我们从云计较中迁徙出去,将会是一个很是使人兴奋的将来。起首,在手艺方面,我们应当从点对点收集中取得相当多的改良。内容可寻址存储能够在不受信赖的授权环境下,供给对内容自己的加密验证,并进行永远的托管(只需有人对它感爱好),我们应当能看到其速度的光鲜明显晋升,即便是在阔别数据中间的成长中世界的边沿(乃至是在另外一个星球上)。

  在某个时辰,乃至连数据中间都可能成为汗青。消费装备变得如斯壮大,无处不在,计较能力和存储空间几近到处可见。

  对运转web利用法式的企业来讲,这一转变将会节流庞大的本钱。企业也将可以或许削减对宕机风险的存眷,更多地存眷增添客户价值,让所有人受益。我们依然需要云托管办事器,但它们只是浩繁同类办事器中的一种。我们还能够看到更多样化的利用法式,在这些利用法式中,并不是所有的利用法式都是一样的——在统一个利用法式中,有面向消费者的和后台的,而不同只是拜候权限分歧罢了。

  对企业和客户来讲,另外一个庞大的益处是对客户数据的处置。当不再需要集中存储年夜量的客户消息时,丢掉这些数据的风险就会下降。软件项目界的带领者们(如Erlang的开创人Joe Armstrong,他的谈话很值得存眷)持久以来一向认为,在互联网上,客户向企业的法式发送数据的设想是一种退化,企业应当向客户发送法式,以让他们可以或许履行私家的数据,而这些数据不会被间接同享。如许的模式仿佛更平安,而且也不会以任何体例禁止企业搜集他们所需的有效的用户目标。

  并且,当前没有甚么体例能禁止夹杂的办事模式,这些办事不通明,并保存了私家数据。

  这类类型的利用法式架构仿佛是一种更天然的体例,来供给年夜范围计较和软件办事,并且也更接近在开放消息互换的设法,任何人都能够便利地向他人转发内容,并节制能够发布和拜候的内容,而不是由具有办事器的私有实体来节制。

Copyright © 2019 华体会智能技术股份有限公司.粤ICP备16017609号

粤公网安备44030402003674号

友情链接: 友情链接 | 网站地图

微信关注 微信关注
微博
0755-83218588
TOP