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

編程語言WebAssembly發(fā)展的三大支柱

譯文
開發(fā) 后端
圍繞WebAssembly的軟件行業(yè)正大行其道。這項技術(shù)通常名為WASM,正在改變我們的代碼在Web瀏覽器、邊緣云和物聯(lián)網(wǎng)設(shè)備等環(huán)境中的執(zhí)行方式。

[[420139]]

【51CTO.com快譯】圍繞WebAssembly的軟件行業(yè)正大行其道。這項技術(shù)通常名為WASM,正在改變我們的代碼在Web瀏覽器、邊緣云和物聯(lián)網(wǎng)設(shè)備等環(huán)境中的執(zhí)行方式。

本文主要介紹什么讓WASM顯得很特殊、為什么您應(yīng)該關(guān)心它,以及為什么我認為它會在未來幾年驅(qū)動新一代軟件。我將列出WebAssembly的三大支柱——安全性、可移植性和性能,并概述為什么這三大支柱使WASM成為一股不可忽視的力量。

安全性

不妨從安全性開始說起。如今,安全性是許多人的頭等大事,供應(yīng)鏈問題、加密貨幣劫持和數(shù)據(jù)泄露的報道屢見不鮮。WebAssembly從許多方面加強安全,從安全沙箱開始入手。

執(zhí)行WASM后,代碼無法訪問任何內(nèi)容,包括網(wǎng)絡(luò)、文件系統(tǒng)或沙箱外面的其他任何內(nèi)容。這被稱為默認拒絕安全模式,它不是由Docker等容器技術(shù)實現(xiàn)的。針對WASM沙箱內(nèi)運行、與外界進行交互的代碼,必須明確授予它對主機功能的訪問權(quán)限。

Web瀏覽器可以授予WASM模塊某些功能,比如獲取API和訪問DOM。云環(huán)境等其他主機可以使用WASI(WebAssembly系統(tǒng)接口)授予模塊對文件系統(tǒng)、隨機性(如 /dev/urandom)和系統(tǒng)時間等常見對象的訪問權(quán)限。這一切確保了WASM模塊內(nèi)的代碼只可以訪問其運行所需要的資源,別的資源訪問不了。

為了應(yīng)對猖獗的供應(yīng)鏈攻擊,還有組織竭力使WebAssembly模塊的加密簽名成為該規(guī)范的標準部分。能夠使用受信任的密鑰對模塊進行簽名,并在系統(tǒng)嘗試運行該模塊時驗證該簽名,這將是一大勝利,并有助于在使用WebAssembly構(gòu)建應(yīng)用程序時夯實“縱深防御”這種理念。

軟件供應(yīng)商開始將其API庫作為WASM模塊來分發(fā)時,這將變得尤為重要;我們將能夠充分利用跨語言模塊鏈接(指由不同語言構(gòu)建的模塊能夠共享內(nèi)存和函數(shù)),同時還可以驗證模塊是由供應(yīng)商開發(fā)的、并且未經(jīng)篡改。

可移植性

鏈接模塊這個想法引出了第二個支柱:可移植性。我喜歡從兩個方面來思考WASM的可移植性:語言可移植性和平臺可移植性。語言可移植性是用一種語言(比如Rust)編寫的模塊在用另一種語言(比如Go)編寫的系統(tǒng)中運行的能力。由于WASM運行時環(huán)境可以嵌入到其他軟件中,它們可用于引入專門的組件,而這些組件原本是您團隊使用的主要語言不可能實現(xiàn)的。這個概念還可以應(yīng)用于通過將用不同語言編寫的多個WASM模塊組合起來以形成單個軟件而構(gòu)建的應(yīng)用程序,比如Atmo 框架。

在平臺可移植性方面,WebAssembly不依賴任何硬件架構(gòu),因此它可以在多個不同平臺上執(zhí)行,無需重新編譯。比如說,這將讓您可以生成單個WASM文件,在物聯(lián)網(wǎng)設(shè)備和云虛擬機上都可以運行。WASM模塊被執(zhí)行時,它就被提前(AOT)或即時(JIT)編譯成機器原生代碼。

WASM運行時環(huán)境(比如Chrome的V8、Wasmtime或Wasmer)自動執(zhí)行該編譯,這使得運行任何模塊都非常簡單。比如說,這在以下場景中變得很有用:當流量高峰導致某個模塊面臨大量的入站請求時,您的代碼自動從中央云實例移動到邊緣計算網(wǎng)絡(luò)。

性能

最后一個支柱是性能。WebAssembly旨在以原生或接近原生的速度執(zhí)行代碼。有眾多因素影響任何應(yīng)用程序的性能,包括語言、硬件、垃圾收集和虛擬化等。

使用WebAssembly,只需在運行時針對每個平臺優(yōu)化自己,就可以以高性能的方式輕松執(zhí)行代碼。我們?nèi)蕴幱赪ebAssembly的早期階段,但它的性能已經(jīng)可以與經(jīng)過多年優(yōu)化的V8 JavaScript引擎相媲美。所有可編譯成WebAssembly的語言都將受益于將來為WASM運行時環(huán)境帶來的任何性能改進,這對所有人來說都是一大利好。

我邀請您思考您在構(gòu)建軟件時,問問自己開發(fā)平臺的哪些方面對您最重要。我敢打賭,本文討論的三個支柱中至少有兩個是貴公司的關(guān)鍵因素,您可以通過采用WebAssembly這種技術(shù),改進代碼的關(guān)鍵屬性。但愿WASM會成為支持軟件工作流程的底層技術(shù),開發(fā)人員根本不需要操心它,就像今天大多數(shù)開發(fā)人員并不操心所用語言的編譯器生成的匯編代碼一樣。

主要區(qū)別在于,WebAssembly一開始就內(nèi)置了這些出色的屬性,確保您的代碼在默認情況下是安全的、可移植的和高性能的,而今天的軟件工具做不到這點。

原文標題:The Three Pillars of WebAssembly,作者:Connor Hicks

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

 

責任編輯:華軒 來源: 51CTO
相關(guān)推薦

2016-11-04 23:29:40

云計算IT基礎(chǔ)設(shè)施

2017-10-10 08:30:21

Kubernetes容器編排

2024-09-18 08:13:01

C#封裝繼承

2012-10-24 14:08:25

Elop趕快下臺

2020-04-04 20:51:40

物聯(lián)網(wǎng)編程語言開發(fā)

2013-05-26 15:47:12

SUSEEnterprise SUSE Cloud

2023-12-27 06:51:21

可觀測性系統(tǒng)數(shù)字體驗

2023-03-30 19:17:54

語言編程

2021-12-13 20:00:49

工業(yè)網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全漏洞

2025-06-10 07:11:00

2010-03-12 10:11:23

Python編程語言

2010-03-10 18:12:50

Python編程語言

2010-03-12 10:48:22

Python編程語言

2009-12-07 13:25:04

編程語言排行榜

2021-06-11 09:00:00

語言WebWebAssembly

2021-01-25 10:50:27

云計算云計算產(chǎn)業(yè)云應(yīng)用

2011-05-23 09:15:20

諾基亞SymbianWindows Pho

2024-09-23 16:12:44

2023-11-29 11:55:15

2023-05-31 13:59:37

點贊
收藏

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

主站蜘蛛池模板: 99精品视频免费观看 | 日韩成人一区 | 欧美三级在线 | 日韩视频在线免费观看 | 亚洲人成在线播放 | 国产女人与拘做视频免费 | 91九色视频在线 | 国产在线麻豆精品入口 | 久久久久久亚洲精品 | 国产精品入口麻豆www | 欧美日韩精品亚洲 | 精品国产伦一区二区三区观看体验 | 欧美一区二区黄 | 国产精品91视频 | 一区二区手机在线 | 天天操天天射综合网 | 亚洲综合一区二区三区 | 91久久久久久久久久久久久 | 日本成人二区 | 精品免费看 | 搞黄网站在线观看 | 青青草视频网站 | 亚洲精品视频在线 | 成人高清视频在线观看 | 成人免费网视频 | 久久久久久国 | www.99re| 久久天天躁狠狠躁夜夜躁2014 | 国产中文字幕在线观看 | 免费成人午夜 | 成人超碰 | av男人的天堂av | 国产乱码精品一区二区三区中文 | 久久久久一区 | 高清国产一区二区 | 亚洲第一视频 | 久久精品久久综合 | 国产高清视频在线观看 | а天堂中文最新一区二区三区 | 精品一级毛片 | 国产中文字幕av |