« Tüm yayınlar

Cloudflare Workers'a Emscripten Üzerinden Native Rust ve Tokio Desteği

Cloudflare, wasm-bindgen'e Emscripten desteği ekleyerek Workers'ta native Rust ve Tokio async çalıştırmayı deneysel olarak duyurdu.

Cloudflare, wasm-bindgen araç zincirine wasm32-unknown-emscripten hedefi için deneysel destek eklediğini duyurdu. Google'ın Portable Toolchains ekibiyle uzun süredir yürütülen bu çalışma, native Rust kodunun ve Tokio tabanlı async uygulamaların Workers üzerinde çalışmasını mümkün kılıyor. Yeni -sWASM_BINDGEN yapılandırması, Emscripten ve wasm-bindgen'in bağlama katmanlarının aynı derlemede birlikte var olmasını sağlıyor.

Bu sayede libc, socket2 ve Mio gibi düşük seviyeli sistem kütüphaneleri Emscripten hedefine yama gerektirmeden veya minimal yamalarla uyumlu hale getirildi. Ekip, gerçek TCP soketleri kullanan bir Rust Minecraft sunucusunu (Pumpkin) Durable Object içinde çalıştırarak bu uyumluluğu kanıtladı.

En kritik iş ise Tokio'nun tek iş parçacıklı JS event loop'u ile bloklamaya dayalı async modelini uyumlu hale getirmekti. Cloudflare, WebAssembly JavaScript Promise Integration (JSPI) desteğini ve Tokio'nun runtime context yönetimini event loop entegrasyonuna uyarlayan yama setlerini paylaştı; bu değişikliklerin bir kısmı üst akış Tokio projesine de gönderildi. Mühendisler için bu, Workers'ta daha geniş bir Rust kütüphane ekosistemine native performansla erişim anlamına geliyor.

Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz