日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

通過這個技術(shù),瀏覽器可以運行Node.js、Rust、Python、PHP、C++、Java代碼了!

來源: 責(zé)編: 時間:2023-10-13 14:33:16 252觀看
導(dǎo)讀WebContainers 是 StackBlitz 推出一種基于容器技術(shù)的 Web 應(yīng)用環(huán)境,它提供了一個隔離環(huán)境來執(zhí)行Web應(yīng)用。WebContainers 也是第一個基于 WebAssembly 的系統(tǒng),可以安全地在瀏覽器中啟動 Node.js 環(huán)境。可以在 Stackblit

tZt28資訊網(wǎng)——每日最新資訊28at.com

WebContainers 是 StackBlitz 推出一種基于容器技術(shù)的 Web 應(yīng)用環(huán)境,它提供了一個隔離環(huán)境來執(zhí)行Web應(yīng)用。WebContainers 也是第一個基于 WebAssembly 的系統(tǒng),可以安全地在瀏覽器中啟動 Node.js 環(huán)境。可以在 Stackblitz 的官網(wǎng)(https://stackblitz.com/)在線體驗 webContainers 技術(shù),官網(wǎng)已經(jīng)初始提供了多種開發(fā)環(huán)境:tZt28資訊網(wǎng)——每日最新資訊28at.com

tZt28資訊網(wǎng)——每日最新資訊28at.com

近日,WebContainers 發(fā)布重要更新,WASI(WebAssembly 系統(tǒng)接口)已全面集成到 WebContainers 中。這是一個重要里程碑,它擴大了可以使用瀏覽器執(zhí)行的操作,是 Web 開發(fā)的全新范例,允許運行大量原生應(yīng)用,而無需考慮多種不同的架構(gòu)。tZt28資訊網(wǎng)——每日最新資訊28at.com

這也意味著,像使用 Rust、Python、PHP、C++、C 等語言編寫的項目都可以在瀏覽器中運行了!tZt28資訊網(wǎng)——每日最新資訊28at.com

什么是 WASI?

多年來,JavaScript 是 Web 瀏覽器原生支持的唯一編程語言。然而,隨著 Web 的不斷發(fā)展,對緊湊、安全和高效執(zhí)行的代碼的需求不斷增長。為了解決這個問題,Mozilla 在 2015 年透露,他們正在與谷歌、微軟和蘋果的工程師合作開發(fā)一種新標(biāo)準(zhǔn),稱為 WebAssembly,簡稱 Wasm。WebAssembly 是一種低級、類似匯編的語言,獨立于任何特定平臺運行。它使用壓縮的二進制格式,旨在安全、快速地運行,提供接近本地執(zhí)行速度的性能。此外,它還可以作為編譯在 Web 上運行的代碼的目標(biāo)。tZt28資訊網(wǎng)——每日最新資訊28at.com

WebAssembly 用作編譯目標(biāo),其中原生代碼(例如 Rust、C++ 或 Golang)被編譯到 WebAssembly。最初,它是為了在Web上運行 C++ 或 Rust 等語言而創(chuàng)建的。然而,現(xiàn)在它的應(yīng)用范圍已經(jīng)擴大了。WebAssembly 支持多種編程語言,并且不僅限于 Web 瀏覽器。tZt28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在,每個 WebAssembly 模塊都在一個沙盒環(huán)境中運行,沒有訪問系統(tǒng)功能(例如文件和文件系統(tǒng)或網(wǎng)絡(luò))的權(quán)限。 這意味著 WebAssembly 的功能受到限制,必須通過JavaScript提供所有外部功能。tZt28資訊網(wǎng)——每日最新資訊28at.com

這就是 WASI 的用武之地。WASI 表示 WebAssembly 系統(tǒng)接口,充當(dāng)一個橋梁,提供標(biāo)準(zhǔn)化接口,允許 WebAssembly 代碼安全地與文件系統(tǒng)、網(wǎng)絡(luò)、生成隨機數(shù)等系統(tǒng)接口交互,而無需要通過JavaScript注入這些功能。這擴展了 WebAssembly 的功能,使我們能夠使用任何編譯為WebAssembly 的語言構(gòu)建應(yīng)用,并在任何可用運行時的地方運行它們,包括 WebContainers!tZt28資訊網(wǎng)——每日最新資訊28at.com

WASI將以多種顛覆性的方式影響你:tZt28資訊網(wǎng)——每日最新資訊28at.com

  • 速度和安全性:兩者兼得。應(yīng)用在保持安全沙盒環(huán)境的同時,以接近本地速度運行。
  • 可移植性:編譯一次,到處運行!將本機代碼編譯為 WebAssembly,并在Web或其他地方運行它。
  • 多語言支持:許多編程語言如 C、C++、Rust 等都可以編譯成WebAssembly 并使用 WASI 接口。這意味著可以使用其他語言編寫系統(tǒng)級別的代碼,而不只是Web所使用的JavaScript,從而提供更多的選項和靈活性。

實現(xiàn)以前不可能的事

WebAssembly 運行時

WASI的集成使得在WebContainers中可以使用wasm命令從終端執(zhí)行 WebAssembly 或 WASI 編譯的模塊。這意味著可以將代碼編譯為WASI,將其上傳到項目中,然后通過新的wasm命令運行它。這樣就可以在終端上直接運行 WebAssembly 模塊,無需使用復(fù)雜的工具或設(shè)置。tZt28資訊網(wǎng)——每日最新資訊28at.com

tZt28資訊網(wǎng)——每日最新資訊28at.com

Python 支持

作為對可能性的示范,目前引入了對 Python 在 WebContainers 中的實驗性支持。考慮到 Python 作為第三種最常用的編程語言,在瀏覽器的原生環(huán)境中一直缺失,這一點尤為重要。由于需要外部服務(wù)器進行執(zhí)行,Python 的功能通常是分割的,導(dǎo)致開發(fā)體驗不連貫。但現(xiàn)在不同了。隨著 WASI 與 WebContainers 的集成,服務(wù)器和瀏覽器的領(lǐng)域進一步融合,為瀏覽器內(nèi)開發(fā)開辟了新時代的道路。tZt28資訊網(wǎng)——每日最新資訊28at.com

重要的是,隨著WASI不斷演進和擴展其功能集,它將直接影響 WebContainers 中 Python 的功能。注意,這種Python的集成目前仍然處于實驗階段,這意味著它目前僅限于 Python 語言的核心功能。目前還未推出對 pip 的支持,即 Python 的軟件包管理器,這意味著暫時還無法安裝額外的 Python 軟件包。可以編寫、編輯和執(zhí)行依賴于內(nèi)置 Python 模塊和功能的Python腳本,但對于依賴于外部庫的更復(fù)雜項目則需要再等待一段時間。tZt28資訊網(wǎng)——每日最新資訊28at.com

tZt28資訊網(wǎng)——每日最新資訊28at.com

原生 CLI 工具

除此之外,還擴展了 shell 的功能,添加了對jq的支持,這是一個本地命令行JSON處理器,可以輕松地切片、過濾、映射和轉(zhuǎn)換結(jié)構(gòu)化數(shù)據(jù)。可以在任何項目中從shell中使用它。tZt28資訊網(wǎng)——每日最新資訊28at.com

tZt28資訊網(wǎng)——每日最新資訊28at.com

展望未來

雖然這些發(fā)展令人興奮,但這只是個開始。WASI 仍在標(biāo)準(zhǔn)化的過程中,隨著它的成熟,它將在 WebContainers  中釋放更多的功能。目前正在開發(fā)一些令人興奮的新功能,包括WebAssembly線程或WebAssembly垃圾回收等。StackBlitz 的野心是為其他流行語言添加實驗性支持,特別是對 Ruby 和 PHP 的實驗性支持。tZt28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-13483-0.html通過這個技術(shù),瀏覽器可以運行Node.js、Rust、Python、PHP、C++、Java代碼了!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Java并行GC的使用和調(diào)優(yōu)

下一篇: 八個適合程序員接私活賺錢的開源項目

標(biāo)簽:
  • 熱門焦點
  • Raft算法:保障分布式系統(tǒng)共識的穩(wěn)健之道

    1. 什么是Raft算法?Raft 是英文”Reliable、Replicated、Redundant、And Fault-Tolerant”(“可靠、可復(fù)制、可冗余、可容錯”)的首字母縮寫。Raft算法是一種用于在分布式系統(tǒng)
  • 十個可以手動編寫的 JavaScript 數(shù)組 API

    JavaScript 中有很多API,使用得當(dāng),會很方便,省力不少。 你知道它的原理嗎? 今天這篇文章,我們將對它們進行一次小總結(jié)。現(xiàn)在開始吧。1.forEach()forEach()用于遍歷數(shù)組接收一參
  • 摸魚心法第一章——和配置文件說拜拜

    為了能摸魚我們團隊做了容器化,但是帶來的問題是服務(wù)配置文件很麻煩,然后大家在群里進行了“親切友好”的溝通圖片圖片圖片圖片對比就對比,簡單對比下獨立配置中心和k8s作為配
  • 一個注解實現(xiàn)接口冪等,這樣才優(yōu)雅!

    場景碼猿慢病云管理系統(tǒng)中其實高并發(fā)的場景不是很多,沒有必要每個接口都去考慮并發(fā)高的場景,比如添加住院患者的這個接口,具體的業(yè)務(wù)代碼就不貼了,業(yè)務(wù)偽代碼如下:圖片上述代碼有
  • 零售大模型“干中學(xué)”,攀爬數(shù)字化珠峰

    文/侯煜編輯/cc來源/華爾街科技眼對于絕大多數(shù)登山愛好者而言,攀爬珠穆朗瑪峰可謂終極目標(biāo)。攀登珠峰的商業(yè)路線有兩條,一是尼泊爾境內(nèi)的南坡路線,一是中國境內(nèi)的北坡路線。相
  • 2納米決戰(zhàn)2025

    集微網(wǎng)報道 從三強爭霸到四雄逐鹿,2nm的廝殺聲已然隱約傳來。無論是老牌勁旅臺積電、三星,還是誓言重回先進制程領(lǐng)先地位的英特爾,甚至初成立不久的新
  • 7月4日見!iQOO 11S官宣:“雞血版”驍龍8 Gen2+200W快充加持

    上半年已接近尾聲,截至目前各大品牌旗下的頂級旗艦都已悉數(shù)亮相,而下半年即將推出的頂級旗艦已經(jīng)成為了數(shù)碼圈爆料的主流,其中就包括全新的iQOO 11S系
  • iQOO 11S或7月上市:搭載“雞血版”驍龍8Gen2 史上最強5G Soc

    去年底,iQOO推出了“電競旗艦”iQOO 11系列,作為一款性能強機,iQOO 11不僅全球首發(fā)2K 144Hz E6全感屏,搭載了第二代驍龍8平臺及144Hz電競屏,同時在快充
  • 2299元起!iQOO Pad開啟預(yù)售:性能最強天璣平板

    5月23日,iQOO如期舉行了新品發(fā)布會,除了首發(fā)安卓最強旗艦處理器的iQOO Neo8系列新機外,還在發(fā)布會上推出了旗下首款平板電腦——iQOO Pad,其搭載了天璣
Top 主站蜘蛛池模板: 正阳县| 千阳县| 北票市| 宜丰县| 克山县| 山西省| 贡嘎县| 鄂伦春自治旗| 宝山区| 许昌市| 阳山县| 冷水江市| 福泉市| 遂昌县| 房山区| 海晏县| 清镇市| 张家港市| 宝坻区| 来宾市| 青龙| 昌乐县| 兴海县| 景宁| 通渭县| 无锡市| 从化市| 治县。| 洛隆县| 乌兰浩特市| 隆安县| 赤水市| 浏阳市| 新干县| 南靖县| 乌拉特后旗| 盘锦市| 甘孜| 秭归县| 漳浦县| 阿拉善右旗|