A WebAssembly egy bináris futtatási formátum, amely natívhoz közeli sebességgel, biztonságosan futtat kódot böngészőben vagy szerveren.
A WebAssembly, röviden Wasm, egy bináris futtatási formátum, amelyre magas szintű programozási nyelvekből (pl. Rust, C++, vagy akár JavaScript) fordítható kód. A lényege, hogy a lefordított kód natívhoz közeli sebességgel fut, ugyanakkor sandboxolt, elszigetelt környezetben, ami azt jelenti, hogy nem férhet hozzá szabadon a rendszer erőforrásaihoz — ez biztonsági szempontból kulcsfontosságú, amikor idegen fejlesztők kódját kell futtatni egy közös platformon.
Miért találkozol vele Shopify-fejlesztőként
A Shopify Functions rendszere WebAssembly-re épül: amikor egy fejlesztő egyedi üzleti logikát ír — például egyedi árkedvezmény-szabályt vagy szállítási feltételt —, ez a kód Rustban vagy JavaScriptben íródik, majd Wasm-bájtkódra fordul, és így fut le a Shopify infrastruktúráján. Ennek két gyakorlati előnye van egy magyar Shopify-fejlesztő számára: a Functions-kód rendkívül gyorsan lefut (ez kritikus a checkout folyamatnál, ahol minden ezredmásodperc számít), és a sandboxolás miatt a platform biztonságosan futtathatja több ezer kereskedő egyedi kódját anélkül, hogy az egyik hibás vagy rosszindulatú kód veszélyeztetné a többit.
Ha tehát Shopify Functions-t fejlesztesz, közvetlenül nem kell Wasm-mal kézzel dolgoznod — a fordítási lépést a Shopify CLI és a build eszközök végzik el —, de érdemes tudni, hogy a kódod végül ebben a formátumban fut, mert ez magyarázza a Functions bizonyos korlátait (pl. futásidő- és memóriakorlátok).
Bővebben: Milyen nyelven programozhatsz Shopify-ra? Liquid, JavaScript, Rust és a többiek