INTEGRITY Dokumentace

Podporované crates

Kontext

Přečtěte si o oblíbených Rust crates, u kterých bylo potvrzeno, že fungují na Workers při použití workers-rs (nebo v některých případech jen wasm-bindgen), pro psaní Workers ve WebAssembly. Každý příklad Rust crate obsahuje veškerou vlastní konfiguraci, která je potřeba.

Nejde o vyčerpávající seznam, mnoho Rust crates lze zkompilovat do wasm32-unknown-unknown cíl, který Workers podporují. V některých případech to může vyžadovat vypnutí výchozích funkcí nebo zapnutí funkce specifické pro Wasm. Je důležité zvážit přidávání nových závislostí, protože to může výrazně zvýšit velikost vašeho Workeru.

time

Mnoho crates, které byly upraveny pro kompatibilitu s Wasm, používá time crate místo std::time. Pro time crate fungoval ve Wasm, wasm-bindgen funkce musí být zapnutá, aby bylo možné z JavaScriptu získat informace o časování.

tracing

Trasování lze povolit pomocí tracing-web crate a time funkci pro tracing-subscriber. Vzhledem k časová omezení na Workers budou mít spany stejný čas začátku a konce, pokud nezahrnují I/O.

Viz tracing příklad s dalšími informacemi.

reqwest

reqwest knihovna lze zkompilovat do Wasm a napojit na JavaScript fetch API automaticky pomocí wasm-bindgen.

tokio-postgres

tokio-postgres lze zkompilovat do Wasm. Musí být nakonfigurován tak, aby používal Socket z workers-rs:

Viz tokio-postgres příklad s dalšími informacemi.

hyper

hyper crate obsahuje dva HTTP klienty, nižší úrovně conn modul a modul vyšší úrovně Client. conn modul lze použít s Workers Socket, nicméně Client vyžaduje časové závislosti, které zatím nejsou kompatibilní s Wasm.

Viz hyper příklad s dalšími informacemi.