日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] ArcBlock 是誰,為什么他們喜歡 BEAM? ArcBlock 區(qū)塊基石[1]肩負(fù)這樣一項(xiàng)使命:大大簡化區(qū)塊鏈技術(shù)并將其迅速應(yīng)用于日常生活之中。為此,他們開發(fā)了一個區(qū)塊鏈全棧開發(fā)平

ArcBlock 是誰,為什么他們喜歡 BEAM?

ArcBlock 區(qū)塊基石[1]肩負(fù)這樣一項(xiàng)使命:大大簡化區(qū)塊鏈技術(shù)并將其迅速應(yīng)用于日常生活之中。為此,他們開發(fā)了一個區(qū)塊鏈全棧開發(fā)平臺,為開發(fā)者提供了輕松構(gòu)建、運(yùn)行和部署去中心化應(yīng)用(DApps)所需的一切。其平臺的核心是 BEAM 虛擬機(jī)。他們?nèi)娜庑湃魏椭С?Erlang 生態(tài)系統(tǒng),并且作為創(chuàng)始贊助人加入了 Erlang 生態(tài)系統(tǒng)基金會。在這篇博文中,ArcBlock 研發(fā)副總裁陳天將談?wù)勊麄優(yōu)槭裁寸姁?BEAM 虛擬機(jī)以及將其用作所有希望開發(fā) DApp 的人的基石的益處。

BEAM 和區(qū)塊鏈簡介

在構(gòu)建具有高可用度、容錯能力和可擴(kuò)展性的實(shí)時系統(tǒng)方面,Erlang 是最好的編程語言之一。BEAM 是虛擬機(jī)——在我們看來也是默默無聞的英雄。BEAM 的優(yōu)點(diǎn)也適用于在虛擬機(jī)上運(yùn)行的其他語言,包括 Elixir。無論人們使用何種高級編程語言,一切都?xì)w結(jié)于 BEAM。這是技術(shù)中重要的一環(huán),它幫助實(shí)現(xiàn)所有重要的百分百可用性。

如今,BEAM 為全球一半以上的互聯(lián)網(wǎng)路由器助力,我們不認(rèn)為能找到比這更有力的證明了。以下是 BEAM 的一些好處,使其極其適合打造區(qū)塊鏈。

網(wǎng)絡(luò)共識

將 BEAM 作為構(gòu)建去中心化應(yīng)用的關(guān)鍵組件的決定很簡單。首先,區(qū)塊鏈和去中心化應(yīng)用[2]需要在網(wǎng)絡(luò)中的所有節(jié)點(diǎn)上實(shí)現(xiàn)一致的狀態(tài)。我們通過使用狀態(tài)副本引擎(也稱為共識引擎)來實(shí)現(xiàn)這一點(diǎn)。共識很重要,因?yàn)檫@種機(jī)制確保信息添加到區(qū)塊鏈賬本是有效的。為了達(dá)成共識,網(wǎng)絡(luò)上的節(jié)點(diǎn)需要對信息達(dá)成一致,共識達(dá)成后,數(shù)據(jù)就可被添加到分類賬中。可用的引擎很多,我們平臺目前選擇 Tendermint,支持狀態(tài)復(fù)制引擎。

BEAM + DApps

除了共識引擎外,BEAM 是滿足去中心化應(yīng)用其他幾個關(guān)鍵需求的完美解決方案。為了讓去中心化應(yīng)用能在我們的開發(fā)框架中工作,我們需要一個嵌入式數(shù)據(jù)庫存儲應(yīng)用狀態(tài),以及一個用于區(qū)塊鏈數(shù)據(jù)的索引數(shù)據(jù)庫。在此過程中,我們還需要區(qū)塊鏈節(jié)點(diǎn)能夠監(jiān)聽網(wǎng)絡(luò)上的節(jié)點(diǎn),并為下一個數(shù)據(jù)區(qū)塊“投票”。對于這些需求,系統(tǒng)需要持續(xù)的響應(yīng)和可用性。

現(xiàn)在,需要注意的是,除了持續(xù)響應(yīng)之外,我們還需要考慮 CPU 任務(wù)。特別是當(dāng)系統(tǒng)遇到 CPU 密集型任務(wù)時,我們的區(qū)塊鏈平臺和服務(wù)不能停止工作。如果系統(tǒng)變得無響應(yīng),則可能發(fā)生潛在的災(zāi)難性錯誤。

代碼熱重載

除了 BEAM 的調(diào)度器,我們喜歡的另一個特性是代碼熱重載。它可以讓你在運(yùn)行中做幾乎任何事情,而不需要關(guān)閉 BEAM。例如,我們的區(qū)塊鏈應(yīng)用平臺附帶了許多不同的智能合約,開發(fā)者可以使用這些合約使去中心化應(yīng)用的功能更加豐富。然而,通過區(qū)塊鏈,您擁有一個分布式網(wǎng)絡(luò),需要確保每個節(jié)點(diǎn)都行為一致。

在大多數(shù)情況下,開發(fā)者必須更新和重新啟動他們的節(jié)點(diǎn)以啟用最新軟件,這將導(dǎo)致潛在的問題和不必要的宕機(jī)。通過 ArcBlock,我們利用 BEAM 的代碼熱重載特性,讓節(jié)點(diǎn)在整個網(wǎng)絡(luò)中動態(tài)地啟用/禁用智能合約。這只需通過發(fā)送交易來完成,該交易告訴系統(tǒng),它應(yīng)該在特定的時間升級軟件。當(dāng)這種情況發(fā)生時,ArcBlock 將告訴 BEAM 安裝新代碼,然后網(wǎng)絡(luò)中的每個節(jié)點(diǎn)都將擁有最新的功能。

速度是相對的

BEAM 使用“演員模型”來模擬真實(shí)世界,一切都是不可變的。因此,不需要定狀態(tài)并預(yù)防競爭狀況。當(dāng)然,一切都是有代價的。BEAM 簡單而美麗的不變性可能會導(dǎo)致程序運(yùn)行得更慢。為了緩解這一潛在的緩慢,ArcBlock 利用 Rust 來幫助 CPU 完成密集的任務(wù),例如為狀態(tài)創(chuàng)建 Merkle-Patricia 樹。再次強(qiáng)調(diào),通過提供簡單的方法來與外部世界溝通,使用 Rust 將性能提高到另一個水平,BEAM 證明了它的價值。

垃圾收集

別讓這個名字欺騙你。垃圾收集是至關(guān)重要的。Erlang 使用動態(tài)內(nèi)存和跟蹤垃圾收集。每個進(jìn)程都有自己的堆棧和堆,它們被分配在相同的內(nèi)存塊中,并且可以彼此增長。當(dāng)堆棧和堆相遇時,垃圾收集器被觸發(fā),內(nèi)存將被回收。

雖然這個解釋有點(diǎn)技術(shù)性,但是 BEAM 的垃圾收集過程是在進(jìn)程水平完成的,從而確保不會出現(xiàn)“讓世界停止,讓我清理垃圾”這類的垃圾收集。相反,它確保進(jìn)程在沒有任何類型的中斷情況下繼續(xù)運(yùn)行。

OTP

最后但并非最不重要的是,Erlang 提供了一個名為 OTP 的開發(fā)套件,讓開發(fā)者使用在 BEAM 世界中得到認(rèn)可的最佳實(shí)踐的簡單方法。對于任何企業(yè)或區(qū)塊鏈應(yīng)用平臺而言,圍繞行業(yè)標(biāo)準(zhǔn)構(gòu)建是必須的,OTP 使利用 BEAM 中開發(fā)者可用的所有優(yōu)點(diǎn)編寫代碼變得容易。

容錯

我們把這一點(diǎn)留到最后是有原因的。這是目前為止 ArcBlock 最依賴 BEAM 的特性。在區(qū)塊鏈領(lǐng)域,它是使 BEAM 優(yōu)于許多競爭對手的技術(shù)。盡管成千上萬的交易同時發(fā)生;但系統(tǒng)特定部分發(fā)生的任何錯誤都不會影響整個節(jié)點(diǎn)。錯誤將可自我修復(fù),使節(jié)點(diǎn)能夠抵御不良行為或特定攻擊。對于向用戶交付服務(wù)或支持生產(chǎn)品質(zhì)的應(yīng)用的任何人來說,這都是一個關(guān)鍵特性。通過引入默認(rèn)容錯,我們可以確保運(yùn)行在 ArcBlock 平臺上的任何人都保持在線和可用。

我們相信,BEAM 雖然是多年前設(shè)計的,但其目的是用于區(qū)塊鏈。它為開發(fā)者和像 ArcBlock 這樣的區(qū)塊鏈平臺提供了所有必要的特性,以及運(yùn)行高并發(fā)、容錯系統(tǒng)的能力,讓開發(fā)者的工作變得更加輕松。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機(jī)驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機(jī)驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉