SQLite bætir við WASM stuðningi til að nota DBMS í vafra

SQLite forritarar eru að þróa verkefni til að innleiða getu til að setja safnið saman í WebAssembly millikóða, sem getur keyrt í vafra og hentar til að skipuleggja vinnu með gagnagrunninn úr vefforritum í JavaScript. Kóði til að styðja við WebAssembly hefur verið bætt við aðalverkefnageymsluna. Ólíkt WebSQL API, sem er byggt á SQLite, er WASM SQLite algjörlega einangrað frá vafranum og hefur ekki áhrif á öryggi hans (Google ákvað að afnema stuðning við WebSQL í Chrome eftir að hægt var að nýta nokkra veikleika í SQLite í gegnum WebSQL til að ráðast á vafrann) .

Markmið verkefnisins er að bjóða upp á virkan JavaScript ramma sem er eins að virkni og SQLite API. Vefhönnuðir eru með háþróað hlutbundið viðmót til að vinna með gögn í stíl sql.js eða Node.js, binding yfir lágstig C API og API sem byggir á Web Worker vélbúnaðinum, sem gerir kleift að þú til að búa til ósamstillta meðhöndlara sem keyrðir eru í aðskildum þræði. Til að fela ranghala við að skipuleggja vinnu með straumum ofan á API sem byggir á Web Worker er einnig verið að þróa útgáfa af forritsviðmótinu sem byggir á Promise vélbúnaðinum.

Gögnin sem vefforrit geyma í WASM útgáfu af SQLite er hægt að staðsetja innan núverandi lotu (týnast eftir endurhleðslu síðu) eða geymd á biðlarahlið (vistuð á milli lota). Til varanlegrar geymslu hafa bakendarnir verið útbúnir til að setja gögn í staðbundið skráarkerfi með OPFS (Origin-Private FileSystem, viðbót við File System Access API, sem nú er aðeins fáanlegt í vöfrum sem byggja á WebKit og Chromium) og í staðbundinni vafrageymslu. á window.localStorage API og window.sessionStorage. Þegar localStorage/sessionStorage er notað endurspeglast gögnin í samsvarandi geymslum á lykil-/gildissniði og þegar OPFS er notað eru tveir valkostir: líkja eftir sýndar-FS með WASMFS og aðskilda útfærslu á sqlite3_vfs, sem býður upp á SQLite VFS lag byggt. á OPFS.

Til að byggja SQLite inn í WASM útsýni er Emscripten þýðandinn notaður (það er nóg að smíða ext/wasm viðbótina: “./configure —enable-all; make sqlite3.c; cd ext/wasm; make”). Úttakið er sqlite3.js og sqlite3.wasm skrár, sem hægt er að hafa með í JavaScript verkefninu þínu (HTML og JavaScript dæmi).

Heimild: opennet.ru

Bæta við athugasemd