成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Rust的好搭檔,Wasm需要學(xué)習(xí)下Java

譯文 精選
開(kāi)發(fā) 前端
用“Rust+Wasm”寫(xiě)前端真香,已經(jīng)成為了圈內(nèi)的大眾話題,甚至在2018年,Rust重點(diǎn)發(fā)展目標(biāo)之一就是建立針對(duì)便于開(kāi)發(fā)WebAssembly的生態(tài)工具。那么5年過(guò)去了,這門(mén)有望取代JavaScript的語(yǔ)言,究竟需要如何發(fā)展,創(chuàng)建者發(fā)話了:向Java學(xué)習(xí)!

作者丨 B. Cameron Gain

譯者丨千山

很難相信,自從2001年互聯(lián)網(wǎng)泡沫破滅以來(lái),已經(jīng)過(guò)去了20多年。每當(dāng)科技處于周期性下行軌道時(shí),它仍然是潛在厄運(yùn)的前兆。我清楚地記得,在2001年經(jīng)濟(jì)崩盤(pán)后不久,我曾和一些IT領(lǐng)域的失業(yè)者、待業(yè)者一起,整天無(wú)所事事地閑逛。

某天,在紐約的一個(gè)公園里,我的一個(gè)朋友坐在公園的長(zhǎng)椅上敲著他的筆記本電腦,他說(shuō)有一個(gè)非常酷的網(wǎng)站創(chuàng)建工具叫Java。

實(shí)際上,時(shí)間已經(jīng)過(guò)去很久了,但我至今記憶猶新。

朋友興奮地描述著這樣的圖景:你可以用Java代碼編程,并部署在你想要的任何地方,這是多么令人驚嘆。這在改變網(wǎng)站用戶體驗(yàn)方面發(fā)揮了關(guān)鍵作用,尤其是和上世紀(jì)90年代相比,彼時(shí)還是HTML代碼提供網(wǎng)站設(shè)計(jì)的主要元素。

“當(dāng)然,為什么不呢,我去看看,”我回應(yīng)道。

之后就是我們大家都熟知的歷史了:不僅在Web開(kāi)發(fā)中,Java在整個(gè)IT基礎(chǔ)設(shè)施中都占據(jù)了一席之地。

快進(jìn)到今天:有一個(gè)叫做WebAssembly或Wasm的東西,它提供了非常類似的聲明:一次編譯,到處運(yùn)行。它不僅適用于最初創(chuàng)建的Web應(yīng)用程序,而且適用于跨網(wǎng)絡(luò)和在CPU上運(yùn)行的任何東西。

這有沒(méi)有讓你聯(lián)想到什么?

企業(yè)管理協(xié)會(huì)(EMA)的分析師Torsten Volk評(píng)論道:“Wasm可能是Java的孫子,它遵循了一脈相承的原則,即允許開(kāi)發(fā)人員在任何設(shè)備上運(yùn)行相同的代碼,但與此同時(shí),Wasm還修復(fù)了阻止‘在任何設(shè)備上運(yùn)行Java’的初心成真的基本問(wèn)題。”

1、簡(jiǎn)單案例

Wasm已被證明在許多不同的硬件環(huán)境中非常有效,從服務(wù)器端到邊緣部署和物聯(lián)網(wǎng)設(shè)備,或者任何代碼可以直接在CPU上運(yùn)行的地方。

代碼捆綁在整齊打包的Wasm可執(zhí)行文件中運(yùn)行,可以將其與容器甚至迷你操作系統(tǒng)相比較,后者運(yùn)行時(shí)所需的代碼和目標(biāo)配置要少得多(如果有的話)。從本質(zhì)上講,無(wú)論代碼部署在哪里,應(yīng)用程序都比僅僅局限于Web瀏覽器環(huán)境要遠(yuǎn)得多。因此,開(kāi)發(fā)人員創(chuàng)建代碼并部署它。它真的可以這么簡(jiǎn)單,尤其是在使用PaaS解決方案時(shí)。

Volk指出,最重要的是,Wasm實(shí)現(xiàn)了真正的“一次編譯,到處運(yùn)行”功能,即相同的代碼可以在任何受支持的設(shè)備上運(yùn)行,而不需要重新編譯。

“Wasm不局限于一種開(kāi)發(fā)語(yǔ)言,而是支持Python和許多其他流行語(yǔ)言。開(kāi)發(fā)人員可以在服務(wù)器和其他設(shè)備的共享環(huán)境中運(yùn)行他們的代碼,而不必?fù)?dān)心底層的Kubernetes集群或虛擬機(jī)管理程序,”Volk說(shuō)。“他們還為他們的微服務(wù)接收統(tǒng)一的日志記錄和跟蹤,開(kāi)箱即用。與Java相比,這種簡(jiǎn)化的開(kāi)發(fā)體驗(yàn)是另一個(gè)巨大的優(yōu)勢(shì)。”

在最近的KubeCon+CloudNativeCon會(huì)議上,有人發(fā)表了關(guān)于使用Wasm取代Kafka以降低時(shí)延的演講。與此同時(shí),Java繼續(xù)被用于網(wǎng)絡(luò)應(yīng)用程序,盡管替代方案可以提供更好的性能,但開(kāi)發(fā)人員仍然在使用它,因?yàn)樗麄冎皇窍矚g使用Java。由此推斷,即使Wasm的運(yùn)行時(shí)性能不是很好,開(kāi)發(fā)人員仍然可能僅僅因?yàn)槭褂煤?jiǎn)單而采用它。

“Wasm的一大優(yōu)點(diǎn)是,開(kāi)發(fā)人員很容易上手,只需部署一些代碼并立即觀察其運(yùn)行即可。這種價(jià)值主張可能需要一段時(shí)間才能完全理解,可是一旦你迷上了,你就不想再擔(dān)心底層基礎(chǔ)設(shè)施的里里外外了,”Volk說(shuō)。“然后你可以決定是否有必要替換Kafka,或者你只是想把它連接到你的Wasm應(yīng)用程序上。”

Java的整個(gè)“一次編譯,到處運(yùn)行”的承諾與WebAssembly非常相似,F(xiàn)ermyon Technologies的首席執(zhí)行官兼聯(lián)合創(chuàng)始人Matt Butcher提到:“事實(shí)上,Luke (注:Luke Wagner是WebAssembly的初作者)曾經(jīng)告訴我,他認(rèn)為Java是20年的有用研究,構(gòu)成了如何編寫(xiě)下一代(例如Wasm)的基礎(chǔ)。”

2、還是不一樣

Java和Wasm之間有一個(gè)關(guān)鍵區(qū)別:它們的安全態(tài)勢(shì)。

它的可移植性和一致性可以使安全性和合規(guī)性更易于管理(同樣,它在 CPU 級(jí)別以二進(jìn)制格式運(yùn)行)。此外,Wasm結(jié)構(gòu)的簡(jiǎn)單性意味著代碼在封閉的沙盒環(huán)境中發(fā)布,幾乎直接發(fā)布到端點(diǎn)。Java(以及 .NET)的默認(rèn)安全狀態(tài)是“信任它正在運(yùn)行的代碼”,而Java授予代碼對(duì)文件系統(tǒng)、環(huán)境、進(jìn)程和網(wǎng)絡(luò)的訪問(wèn)權(quán)限。

“相比之下,Wasm的默認(rèn)安全狀態(tài)是不信任在語(yǔ)言運(yùn)行時(shí)中運(yùn)行的代碼。對(duì)于Fermyon(以云和邊緣為中心)來(lái)說(shuō),這是使Wasm成為云服務(wù)的良好候選的關(guān)鍵特性,”Butcher指出。

因?yàn)樗c容器和虛擬機(jī)采取的安全態(tài)勢(shì)相同。這使得我們作為云供應(yīng)商可以向用戶銷售服務(wù),而無(wú)需審查或批準(zhǔn)用戶的代碼。

換句話說(shuō),在使用分布式容器化和微服務(wù)環(huán)境時(shí),需要擔(dān)心的攻擊點(diǎn)數(shù)量呈指數(shù)級(jí)增長(zhǎng)。Volk同意Matt的評(píng)估,因?yàn)橐揽苛阈湃卧瓌t允許基于相同技術(shù)的多租戶,如mTLS和jwt,這些技術(shù)已經(jīng)用于在Kubernetes上運(yùn)行的應(yīng)用程序容器。

“這使得Wasm很容易在共享環(huán)境中安全地試用,這應(yīng)該會(huì)降低入門(mén)的初始障礙,”Volk說(shuō)。

Java和Wasm之間的另一個(gè)巨大區(qū)別是Java需要JVM并且不需要額外的資源,比如垃圾收集器,InfinyOn的首席技術(shù)官Sehyo Chang如是說(shuō)。

“另一方面,Wasm非常接近底層CPU,不需要GC或其他繁重的粘合邏輯,”Chang說(shuō)。“這使得Wasm能夠在非常低功耗的CPU上運(yùn)行,適合在嵌入式設(shè)備或物聯(lián)網(wǎng)傳感器中運(yùn)行。”

3、結(jié)語(yǔ)

很多人認(rèn)為Wasm的未來(lái)就在于能在瀏覽器之外運(yùn)行它。正如Matt Butcher所說(shuō),Wasm像虛擬機(jī)和容器一樣,能夠在云中運(yùn)行,這才是真正令人興奮的地方。

雖然Wasm還很年輕,但它提供的種種可能性已經(jīng)非常有吸引力。憑借著與瀏覽器高度匹配的各種特性,Wasm在瀏覽器之外更有種“海闊任魚(yú)躍、天高任鳥(niǎo)飛”的意味。終有一日,Wasm會(huì)發(fā)展出更美好的未來(lái)圖景。

原文鏈接:https://thenewstack.io/javas-history-could-point-the-way-for-webassembly/

責(zé)任編輯:武曉燕 來(lái)源: 51CTO技術(shù)棧
相關(guān)推薦

2022-11-18 08:18:46

QueryDSLJPASQL

2022-05-26 07:42:22

Python編輯器VSCode

2022-11-14 09:55:34

長(zhǎng)江存儲(chǔ)

2011-05-20 07:40:08

2021-05-29 20:45:37

辦公

2017-11-09 16:02:26

11.11

2021-03-24 16:59:15

存儲(chǔ)

2019-09-18 13:32:00

DELL筆記本

2024-11-08 09:19:28

2022-12-30 11:05:40

Rust代碼

2023-07-17 11:25:35

.NET程序WinDbgPerfview

2024-09-30 16:25:40

2019-12-11 10:00:10

區(qū)塊鏈區(qū)塊鏈技術(shù)

2011-06-22 10:13:58

TRILLFCoESTP

2020-06-02 10:00:33

GitHub 技術(shù)開(kāi)發(fā)

2024-11-05 09:20:47

2009-07-03 10:48:12

JSP和JSF

2022-11-28 11:41:24

Wasm

2024-07-26 10:13:32

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产伦精品一区二区三区照片91 | 国产美女永久免费无遮挡 | 欧美午夜精品 | 免费观看一级毛片 | 国产精品免费播放 | 日本大片在线播放 | 午夜在线免费观看视频 | 欧美一区在线视频 | 黄色在线观看国产 | 天天爱天天操 | 欧美精品成人一区二区三区四区 | 婷婷激情综合 | 欧美精选一区二区 | 97高清国语自产拍 | 精品久久亚洲 | 国产欧美精品一区 | 91国内精精品久久久久久婷婷 | 亚洲导航深夜福利涩涩屋 | 亚洲欧美一区二区三区情侣bbw | 日韩一区二区三区在线看 | 亚洲理论在线观看电影 | 精品日韩 | 日韩中文字幕一区二区 | h视频免费在线观看 | 亚洲免费精品 | 在线免费观看黄网 | 91久久国产综合久久 | 日本公妇乱淫xxxⅹ 国产在线不卡 | 日韩成人在线一区 | 日韩欧美在线不卡 | 操久久| 国产精久久久久久 | 久久99精品久久久久 | 婷婷免费视频 | 罗宾被扒开腿做同人网站 | 成人做爰69片免费观看 | 欧美日韩在线免费观看 | 九九色九九 | 韩日三级 | 毛片av免费在线观看 | 午夜精品影院 |