官术网_书友最值得收藏!

構(gòu)建Web3.0

要了解Web3.0的關(guān)聯(lián),首先要理解互聯(lián)網(wǎng)是如何構(gòu)建的。互聯(lián)網(wǎng)的構(gòu)建從客戶端(計(jì)算機(jī))開(kāi)始。你的個(gè)人計(jì)算機(jī)、智能手機(jī)和平板計(jì)算機(jī)都是客戶端。當(dāng)你上網(wǎng)時(shí),你的客戶端不斷請(qǐng)求訪問(wèn)儲(chǔ)存在各種服務(wù)器中的信息。

服務(wù)器是托管網(wǎng)絡(luò)的軟硬件。也就是說(shuō),它們存儲(chǔ)網(wǎng)絡(luò)的所有數(shù)據(jù)。你可能認(rèn)為它們是服務(wù)器群,或者堆積著成千上萬(wàn)個(gè)黑色立方體的科技公司的計(jì)算機(jī)房。其實(shí),那些黑色立方體就是服務(wù)器。

客戶端發(fā)出請(qǐng)求,服務(wù)器授權(quán),這就是硬件之間交換信息的方式。單個(gè)服務(wù)器可以有數(shù)千個(gè)客戶端,所有客戶端都共享一個(gè)編寫了交互規(guī)則的通用協(xié)議。客戶端、服務(wù)器與協(xié)議的組合稱為客戶端-服務(wù)器模型,它使我們的智能手機(jī)和筆記本計(jì)算機(jī)不必存儲(chǔ)數(shù)據(jù)及運(yùn)行維護(hù)互聯(lián)網(wǎng)的計(jì)算。

一旦建立了硬件通信系統(tǒng),就會(huì)形成網(wǎng)絡(luò),它為編程語(yǔ)言及其相關(guān)的軟件包提供了運(yùn)行場(chǎng)所。編程語(yǔ)言及其相關(guān)的軟件包可以用來(lái)構(gòu)建平臺(tái),也就是你看到的部分:網(wǎng)站和應(yīng)用程序。

把數(shù)以千計(jì)的網(wǎng)絡(luò)結(jié)合在一起,就形成了人人皆知愛(ài)恨交加的互聯(lián)網(wǎng)。以上這些方面在Web3.0和前幾代互聯(lián)網(wǎng)中,都是一致的。圖1-1呈現(xiàn)了典型的網(wǎng)絡(luò)結(jié)構(gòu)和兩代互聯(lián)網(wǎng)之間的特性差異。

區(qū)塊鏈只對(duì)構(gòu)成互聯(lián)網(wǎng)的一小部分產(chǎn)生影響。由于服務(wù)器的存在是為了響應(yīng)客戶端的請(qǐng)求,它的職責(zé)之一就是存儲(chǔ)數(shù)據(jù),而這通常是通過(guò)數(shù)據(jù)庫(kù)來(lái)完成的。Web3.0只是用區(qū)塊鏈替代了數(shù)據(jù)庫(kù),其他的不同之處在于后續(xù)的互聯(lián)網(wǎng)新興技術(shù)。要理解為什么會(huì)這樣,讓我們來(lái)看看為什么今天的互聯(lián)網(wǎng)會(huì)以這樣的方式發(fā)展。

圖1-1 互聯(lián)網(wǎng)基礎(chǔ)設(shè)施

在遺留系統(tǒng)中,互聯(lián)網(wǎng)的大部分組成部分都被私有化,這是通過(guò)一個(gè)自然進(jìn)化過(guò)程實(shí)現(xiàn)的。為什么會(huì)這樣呢?我們假設(shè)一個(gè)20世紀(jì)90年代的場(chǎng)景。那時(shí),現(xiàn)代互聯(lián)網(wǎng)基礎(chǔ)設(shè)施尚不存在,但相關(guān)各方已完全了解客戶端-服務(wù)器模型。

愛(ài)麗絲(Alice)是一名軟件開(kāi)發(fā)人員,她想推出一個(gè)網(wǎng)絡(luò)應(yīng)用程序。為了讓應(yīng)用程序支持公開(kāi)訪問(wèn),愛(ài)麗絲需要找到一個(gè)或多個(gè)服務(wù)器,以托管她的應(yīng)用程序代碼。自己構(gòu)建硬件基礎(chǔ)設(shè)施,既昂貴,又不切實(shí)際,因此她尋求第三方幫助。有人給愛(ài)麗絲介紹了鮑勃(Bob),他最近開(kāi)了一家專門為愛(ài)麗絲這樣的客戶運(yùn)行服務(wù)器的小公司。不過(guò),鮑勃的服務(wù)器設(shè)置給愛(ài)麗絲帶來(lái)了許多風(fēng)險(xiǎn),這些風(fēng)險(xiǎn)都源于缺乏信任。一個(gè)明顯的問(wèn)題是,因?yàn)椴粔蛐湃危瑦?ài)麗絲不會(huì)給予鮑勃全部的應(yīng)用程序數(shù)據(jù)庫(kù)權(quán)限。即便鮑勃很誠(chéng)實(shí),他也沒(méi)有資源或?qū)I(yè)知識(shí)來(lái)增強(qiáng)安全防護(hù),避免網(wǎng)絡(luò)攻擊。如果鮑勃失勢(shì)或公司倒閉,那么愛(ài)麗絲的應(yīng)用程序?qū)o(wú)法運(yùn)行。如果愛(ài)麗絲的應(yīng)用程序的增長(zhǎng)超過(guò)鮑勃的服務(wù)器容量,應(yīng)用程序也將無(wú)法訪問(wèn)。愛(ài)麗絲無(wú)法信任創(chuàng)建應(yīng)用程序所需的人力或技術(shù)。

幸運(yùn)的是,愛(ài)麗絲找到了IBM(國(guó)際商業(yè)機(jī)器公司)的顧問(wèn)戴夫(Dave),他能解決她的后顧之憂。戴夫稱,他的團(tuán)隊(duì)能提供受一流防火墻和備份系統(tǒng)保護(hù)的無(wú)限服務(wù)器空間,這幾乎能確保愛(ài)麗絲的應(yīng)用程序零風(fēng)險(xiǎn)。愛(ài)麗絲從不得不相信鮑勃的話,轉(zhuǎn)變?yōu)樾湃斡蒊BM的聲譽(yù)和信用背書的工業(yè)級(jí)服務(wù)器。在IBM的幫助下,愛(ài)麗絲完成了代碼編寫,并準(zhǔn)備推出該網(wǎng)絡(luò)應(yīng)用程序。

互聯(lián)網(wǎng)上的每一位構(gòu)建者都在做相同的選擇,即堅(jiān)持與最杰出的服務(wù)器提供商合作。如今,推動(dòng)中心化的大型企業(yè)是互聯(lián)網(wǎng)的基石,因?yàn)樗麄儙椭ヂ?lián)網(wǎng)建立了信任。

眾所周知,IBM并不是壟斷互聯(lián)網(wǎng)的公司,因?yàn)樗鼪](méi)有意識(shí)到互聯(lián)網(wǎng)建設(shè)的關(guān)鍵不在于大型計(jì)算機(jī)。統(tǒng)治互聯(lián)網(wǎng)的,主要是谷歌(Google)、微軟(Microsoft)和亞馬遜(Amazon),因?yàn)樗鼈儎?chuàng)造了“云”,也就是大型科技公司的服務(wù)器。

在潛入“云”端之前,我們必須退一步思考。客戶端-服務(wù)器模型可用來(lái)成功地接入網(wǎng)絡(luò),但如果不添加開(kāi)發(fā)者工具,它不會(huì)創(chuàng)建任何有用的東西。開(kāi)發(fā)者工具這個(gè)術(shù)語(yǔ)涵蓋了構(gòu)建互聯(lián)網(wǎng)的其他組件中的一部分,它包括操作系統(tǒng)、編程語(yǔ)言、編譯器、應(yīng)用程序接口(Application Programming Interface,API)、軟件開(kāi)發(fā)工具包、負(fù)載均衡器、瀏覽器、搜索引擎和內(nèi)容交付網(wǎng)絡(luò)等。30年前,這些工具并不普及,但如今,這些工具是互聯(lián)網(wǎng)上的通用標(biāo)準(zhǔn)。

最初,谷歌、微軟和亞馬遜并沒(méi)有成為提供云服務(wù)的公司。它們?cè)诮厝徊煌念I(lǐng)域構(gòu)建了互聯(lián)網(wǎng)服務(wù):谷歌主攻搜索,微軟提供軟件服務(wù),亞馬遜經(jīng)營(yíng)電子商務(wù)。當(dāng)時(shí),創(chuàng)建互聯(lián)網(wǎng)公司沒(méi)有捷徑可走,也沒(méi)有托管網(wǎng)絡(luò)的簡(jiǎn)單方法,更沒(méi)有在這些網(wǎng)絡(luò)上制作平臺(tái)所需的有用的開(kāi)發(fā)者工具。而如今,大型科技公司要么利用現(xiàn)有的開(kāi)發(fā)工具做到頂尖,要么從頭開(kāi)始,研發(fā)出頂尖的開(kāi)發(fā)者工具。

現(xiàn)在,讓我們看看在2020年,愛(ài)麗絲將如何創(chuàng)建她的網(wǎng)頁(yè)應(yīng)用程序。首先,她會(huì)使用一門編程語(yǔ)言(這也是她的專長(zhǎng)),以此來(lái)對(duì)整個(gè)應(yīng)用程序的邏輯進(jìn)行編碼。這和20世紀(jì)90年代的做法差不多,也不需要第三方幫助,因?yàn)樵S多編程語(yǔ)言都是開(kāi)源的。為了讓愛(ài)麗絲構(gòu)建一個(gè)運(yùn)行軟件邏輯的網(wǎng)絡(luò),也就是說(shuō),把她的應(yīng)用程序放到互聯(lián)網(wǎng)上,她需要找到服務(wù)器來(lái)托管她的應(yīng)用程序代碼。這個(gè)過(guò)程類似于愛(ài)麗絲和鮑勃、戴夫的合作,只是現(xiàn)在,除了大型科技公司的云服務(wù),她沒(méi)有其他更好的選擇。

愛(ài)麗絲這個(gè)例子忽略了當(dāng)今開(kāi)發(fā)者工具帶來(lái)的所有額外負(fù)擔(dān)。在20世紀(jì)90年代,愛(ài)麗絲此時(shí)可能快要完成應(yīng)用程序的開(kāi)發(fā),因?yàn)殚_(kāi)發(fā)者工具很少,這種高效對(duì)愛(ài)麗絲的網(wǎng)頁(yè)應(yīng)用程序沒(méi)有好處。這個(gè)應(yīng)用程序使用起來(lái)可能很復(fù)雜,甚至很難被搜索到,并且不容易與類似的網(wǎng)絡(luò)集成。簡(jiǎn)而言之,在早期互聯(lián)網(wǎng)時(shí)代,愛(ài)麗絲的應(yīng)用幾乎無(wú)法吸引到除了朋友和家人的任何用戶。

大型科技公司之所以如此龐大,是因?yàn)樗麄優(yōu)閻?ài)麗絲和像她這樣的開(kāi)發(fā)人員提供了服務(wù)。為什么這么說(shuō)呢?讓我們看看在2020年,愛(ài)麗絲在互聯(lián)網(wǎng)上使用云設(shè)置她的應(yīng)用程序后,將采取哪些其他步驟。首先,她需要一個(gè)服務(wù)器數(shù)據(jù)庫(kù)。她可以自己創(chuàng)建一個(gè),但綜合考慮,更好的選擇是共享現(xiàn)有的大型科技公司的數(shù)據(jù)庫(kù),因?yàn)榇笮涂萍脊镜臄?shù)據(jù)庫(kù)可以為她處理組織協(xié)調(diào)和安全問(wèn)題。愛(ài)麗絲必須采取的一項(xiàng)安全措施,是設(shè)置與谷歌賬戶等單點(diǎn)登錄兼容的用戶名和密碼訪問(wèn)控制。愛(ài)麗絲還需要設(shè)置一種支付方式,她可能會(huì)使用亞馬遜API網(wǎng)關(guān)之類的服務(wù),一舉解決電子商務(wù)的所有問(wèn)題。為了確保用戶搜到應(yīng)用程序,愛(ài)麗絲必須以符合谷歌搜索算法的方式,構(gòu)建整個(gè)應(yīng)用程序。要吸引用戶,該應(yīng)用程序至少需要在臉書(現(xiàn)已改名為“元宇宙”)上線,最好還要借助諸如微軟的領(lǐng)英(LinkedIn)API,將應(yīng)用建立在一個(gè)更大的平臺(tái)上。然后,愛(ài)麗絲需要開(kāi)發(fā)一個(gè)單獨(dú)的移動(dòng)應(yīng)用程序,同時(shí)滿足蘋果(Apple)應(yīng)用商店和谷歌應(yīng)用市場(chǎng)的要求。在這之后還有類似的后續(xù)流程,以便不同版本手機(jī)能夠使用蘋果支付和谷歌支付購(gòu)買付費(fèi)服務(wù),并與應(yīng)用商店搜索算法匹配。愛(ài)麗絲還必須確保她的應(yīng)用程序和任何可下載的軟件,以及各種存在競(jìng)爭(zhēng)關(guān)系的操作系統(tǒng)相互兼容。

盡管除了編寫應(yīng)用程序代碼,愛(ài)麗絲還采取了這些額外的步驟,但她只是在軟件上添加預(yù)包裝的組件,而這些還是由其他人所有和控制的。從這個(gè)意義上說(shuō),互聯(lián)網(wǎng)應(yīng)用程序就像是忒修斯之船(the Ship of Theseus)的思想實(shí)驗(yàn):當(dāng)你不斷維修和替換這艘古老船只的零部件時(shí),它將在什么時(shí)候不再是忒修斯之船了?隨著互聯(lián)網(wǎng)應(yīng)用程序里裝滿了越來(lái)越多的第三方組件,它將在什么時(shí)候不再為愛(ài)麗絲等開(kāi)發(fā)者所有?如果你想實(shí)際地看待這個(gè)悖論,我認(rèn)為答案取決于你對(duì)大型科技公司的信任程度。

互聯(lián)網(wǎng)是成千上萬(wàn)個(gè)像愛(ài)麗絲這樣的網(wǎng)絡(luò)結(jié)合在一起的產(chǎn)物。這些網(wǎng)絡(luò)都是默認(rèn)私有的,只有在一系列復(fù)雜的授權(quán)后,它們之間才能進(jìn)行交互。當(dāng)然,這并不是對(duì)互聯(lián)網(wǎng)的全面解釋。這只側(cè)重向Web3.0過(guò)渡過(guò)程中發(fā)生變化的方面。既然我們已經(jīng)掌握了“互聯(lián)網(wǎng)”的含義,那么就能從字面意義上來(lái)理解中心化和去中心化這兩種類型的互聯(lián)網(wǎng)了。

與Web3.0相比,愛(ài)麗絲參與的互聯(lián)網(wǎng)是高度中心化的。它的最底層是數(shù)據(jù)結(jié)構(gòu),里面幾乎都是中心化的數(shù)據(jù)庫(kù)。愛(ài)麗絲的應(yīng)用程序數(shù)據(jù)在某個(gè)地方,由單個(gè)實(shí)體控制,基于同樣的原因,愛(ài)麗絲寧愿選擇戴夫的IBM數(shù)據(jù)庫(kù),而不是鮑勃的自制數(shù)據(jù)庫(kù)。向上一層的互聯(lián)網(wǎng)層是構(gòu)成數(shù)據(jù)結(jié)構(gòu)硬件的服務(wù)器。服務(wù)器將數(shù)據(jù)傳輸給客戶端,并且歸托管數(shù)據(jù)庫(kù)的同一家公司所有。服務(wù)器托管制作愛(ài)麗絲的網(wǎng)絡(luò)和平臺(tái)的所有編程邏輯,包括愛(ài)麗絲的應(yīng)用程序代碼和相關(guān)的軟件包。

如果愛(ài)麗絲使用谷歌云(Google Cloud)制作她的應(yīng)用程序,而你正在使用該程序,這意味著你的計(jì)算機(jī)將通過(guò)谷歌的服務(wù)器、利用谷歌的開(kāi)發(fā)工具、從谷歌的數(shù)據(jù)庫(kù)中請(qǐng)求數(shù)據(jù),這就是中心化。稍后我們將討論與此相關(guān)的互聯(lián)網(wǎng)三巨頭。現(xiàn)在,讓我們看看加入?yún)^(qū)塊鏈時(shí),整個(gè)結(jié)構(gòu)將如何變化。

大致而言,在Web3.0中,數(shù)據(jù)結(jié)構(gòu)由區(qū)塊鏈組成,而不僅僅是數(shù)據(jù)庫(kù)。舊數(shù)據(jù)結(jié)構(gòu)必須歸公司所有,才能確保安全,但這種新數(shù)據(jù)結(jié)構(gòu)受到保護(hù),恰恰因?yàn)楣緹o(wú)法擁有它。究其原因,如果你還記得的話,在于奇特?cái)?shù)據(jù)庫(kù)(區(qū)塊鏈)的兩個(gè)獨(dú)特功能:首先,它的數(shù)據(jù)是完美的,它用數(shù)學(xué)方法來(lái)避免錯(cuò)誤;其次,所有數(shù)據(jù)是不可篡改的,這讓它成為一種永恒的真理。對(duì)愛(ài)麗絲來(lái)說(shuō),選擇區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)更可靠,而且可能更便宜。

下一個(gè)Web3.0組件是硬件基礎(chǔ)設(shè)施,它用來(lái)將應(yīng)用程序數(shù)據(jù)結(jié)構(gòu)和用戶相連。客戶端-服務(wù)器模型是實(shí)現(xiàn)此操作的典型做法,只是服務(wù)器必須分布在Web3.0環(huán)境中,這樣網(wǎng)絡(luò)將有利于鮑勃的人工設(shè)置,而不是戴夫的工業(yè)設(shè)計(jì)。由于服務(wù)器默認(rèn)托管區(qū)塊鏈?zhǔn)前踩模U勃不需要任何額外的安全措施。如果他失去對(duì)公司的控制,世界各地其他像他一樣的人,都會(huì)彌補(bǔ)網(wǎng)絡(luò)的異常。IBM的服務(wù)器機(jī)房現(xiàn)在看起來(lái)過(guò)時(shí)了,里面的網(wǎng)絡(luò)安全保護(hù)沒(méi)有必要,此外,還有受地域限制的單點(diǎn)故障。更重要的是,Web3.0可以探索客戶端到客戶端的模型,因?yàn)槿绻W(wǎng)絡(luò)足夠高效,可以分配服務(wù)器計(jì)算資源,客戶端就能自由交互,而無(wú)須相互信任,因?yàn)榭蛻舳诵湃蔚讓拥臄?shù)據(jù)結(jié)構(gòu)。

開(kāi)發(fā)者工具使網(wǎng)絡(luò)成為獨(dú)特而有用的平臺(tái)。現(xiàn)階段,將Web3.0開(kāi)發(fā)者工具與熟悉的網(wǎng)絡(luò)開(kāi)發(fā)者工具進(jìn)行比較,幾乎是不可能的,因?yàn)楝F(xiàn)在沒(méi)有(也不確定會(huì)有)明確的標(biāo)準(zhǔn)。Web3.0開(kāi)發(fā)者工具建立在初始階段的基礎(chǔ)設(shè)施上,它在很多方面和舊的基礎(chǔ)設(shè)施都不具可比性。下面對(duì)Web3.0開(kāi)發(fā)者工具的介紹,大多基于理論以及很多領(lǐng)先初創(chuàng)公司的目標(biāo)。

Web3.0網(wǎng)絡(luò)和愛(ài)麗絲的應(yīng)用程序一樣,是默認(rèn)公開(kāi)的。這意味著用戶名和密碼沒(méi)有意義,連接通過(guò)權(quán)限控制連接平臺(tái)的API也沒(méi)有意義。這些東西是內(nèi)置的,會(huì)自動(dòng)發(fā)生。當(dāng)區(qū)塊鏈身份規(guī)定訪問(wèn)控制時(shí),沒(méi)有用戶名或密碼的互聯(lián)網(wǎng)開(kāi)始成為可能。這個(gè)問(wèn)題比較復(fù)雜,在第六章我們?cè)僭斦f(shuō)。當(dāng)你使用公共網(wǎng)絡(luò)時(shí),API存在的意義也不大。例如,以前應(yīng)用程序必須安裝大型科技公司強(qiáng)加的額外組件,而現(xiàn)在可以將這些組件作為內(nèi)置和無(wú)條件免費(fèi)的模塊。對(duì)愛(ài)麗絲來(lái)說(shuō),這意味著其中的許多應(yīng)用插件都有預(yù)打包代碼,她不需要重新制作。如果她制作了一個(gè)原始插件(今天看起來(lái)這就像是針對(duì)她的應(yīng)用程序的獨(dú)特API),這個(gè)原始插件同樣會(huì)被預(yù)先打包,供其他人使用。

沒(méi)人需要重新造輪子,做無(wú)用功。而且,這也不會(huì)有損愛(ài)麗絲或其他任何人的收入模式或知識(shí)產(chǎn)權(quán)。臉書在社交游戲星佳(Zynga)公司使用它的API來(lái)制作像開(kāi)心農(nóng)場(chǎng)(Farmville)游戲這樣的應(yīng)用程序后才受益,同樣,愛(ài)麗絲也會(huì)在其他人使用她的預(yù)打包代碼時(shí)受益——只是這一次,愛(ài)麗絲和星佳(Zynga)公司不需要為了運(yùn)行自己的應(yīng)用程序,信任像臉書這樣收割利潤(rùn)的傀儡師。

因此,成千上萬(wàn)的這種默認(rèn)的公共網(wǎng)絡(luò),共同創(chuàng)造了Web3.0。

主站蜘蛛池模板: 柏乡县| 东平县| 溧阳市| 云南省| 青河县| 宁夏| 呼伦贝尔市| 平乐县| 阜阳市| 宿州市| 通渭县| 苍溪县| 集贤县| 新和县| 崇仁县| 扎兰屯市| 临猗县| 曲水县| 多伦县| 金川县| 阿鲁科尔沁旗| 永胜县| 平邑县| 阳新县| 子洲县| 达拉特旗| 嘉义市| 沭阳县| 曲水县| 靖远县| 泉州市| 阳新县| 饶平县| 台中县| 水富县| 德钦县| 察隅县| 文山县| 阿拉善左旗| 正蓝旗| 青河县|