INTEGRITY Dokumentace

WebAssembly (Wasm)

WebAssembly (zkráceně Wasm) umožňuje kompilovat jazyky jako Rust, Go nebo C do binárního formátu, který lze spustit v celé řadě prostředí, včetně webové prohlížeče, Cloudflare Workers a další běhová prostředí WebAssembly.

WebAssembly můžete použít k:

Většinu programovacích jazyků lze zkompilovat do Wasm, i když se úroveň podpory u jednotlivých jazyků a kompilátorů liší. Příručky jsou k dispozici pro následující jazyky:

Podporované návrhy

WebAssembly je rychle se vyvíjející soubor standardů, s mnoho navrhovaných API které jsou v různých fázích vývoje. Workers obecně podporuje stejnou sadu funkcí, jaká je dostupná v Google Chrome.

SIMD

SIMD je ve Workers podporováno. Další informace o používání SIMD ve WebAssembly najdete v Rychlé paralelní aplikace s WebAssembly SIMD.

Vlákna

Ve Workers není vláknění možné. Každý Worker běží v jediném vlákně a Web Worker API není podporováno.

Velikost binárního souboru

Kompilace do WebAssembly obvykle vyžaduje zahrnutí dalších runtime závislostí. Workery, které používají WebAssembly, jsou proto typicky větší než ekvivalentní Worker napsaný v JavaScriptu. Čím větší váš Worker je, tím déle mu může trvat spuštění. Více informací najdete v Doba spuštění Workeru další informace. Doporučujeme používat nástroje jako wasm-opt pro optimalizaci velikosti binárního souboru Wasm.

WebAssembly System Interface (WASI)

WebAssembly System Interface (zkráceně WASI) je modulární systémové rozhraní pro WebAssembly, které standardizuje sadu základních systémových volání pro sítě, přístup k souborovému systému a další. Aplikace se mohou spolehnout na to, že se WebAssembly System Interface bude chovat stejně napříč hostitelskými prostředími a operačními systémy.

WASI je starší a rychleji se vyvíjející soubor standardů než Wasm. Podpora WASI je na Cloudflare Workers experimentální a implementovány jsou pouze některé systémové volání. Více informací najdete v našem open source implementace WASI, a článek na blogu o WASI ve Workers demonstrující jeho použití.

Zdroje o WebAssembly