Cuireann SQLite tacaíocht WASM leis chun an DBMS a úsáid i mbrabhsálaí gréasáin

Tá tionscadal á fhorbairt ag forbróirí SQLite chun an cumas an leabharlann a thiomsú i gcód idirmheánach WebAssembly a chur i bhfeidhm, atá in ann oibriú i mbrabhsálaí gréasáin agus atá oiriúnach chun obair a eagrú leis an mbunachar sonraí ó fheidhmchláir ghréasáin i JavaScript. Tá cód chun tacú le WebAssembly curtha le stór an phríomhthionscadail. Murab ionann agus an WebSQL API, atá bunaithe ar SQLite, tá WASM SQLite scoite amach go hiomlán ón mbrabhsálaí agus ní chuireann sé isteach ar a shlándáil (shocraigh Google gan tacaíocht do WebSQL i Chrome a dhímheas tar éis go bhféadfaí roinnt leochaileachtaí in SQLite a shaothrú trí WebSQL chun ionsaí a dhéanamh ar an mbrabhsálaí) .

Is é sprioc an tionscadail creat JavaScript oibre a sholáthar atá comhionann ó thaobh feidhmiúlachta leis an SQLite API. Soláthraítear comhéadan ardleibhéil atá dírithe ar oibiachtaí d’fhorbróirí gréasáin chun oibriú le sonraí i stíl sql.js nó Node.js, atá ceangailteach thar an API C íseal-leibhéil agus API bunaithe ar mheicníocht an Oibrí Gréasáin, a cheadaíonn leat láimhseálaithe asincrónacha a fhorghníomhófar i snáitheanna ar leith a chruthú. Chun an casta a bhaineann le heagrú na hoibre le sruthanna a cheilt ar bharr an API Bunaithe ar Oibrí Gréasáin, tá leagan den chomhéadan cláir bunaithe ar mheicníocht Promise á fhorbairt freisin.

Is féidir na sonraí a stórálann feidhmchláir ghréasáin sa leagan WASM de SQLite a logánú laistigh den seisiún reatha (caillte tar éis athlódáil leathanaigh) nó a stóráil ar thaobh an chliaint (sábháilte idir seisiúin). Le haghaidh buanstórála, ullmhaíodh haiséiligh chun sonraí a chur sa chóras comhad áitiúil trí úsáid a bhaint as OPFS (Origin-Private FileSystem, síneadh leis an API Rochtana Córais Comhad, atá ar fáil faoi láthair i mbrabhsálaithe bunaithe ar WebKit agus Cróimiam amháin) agus i stóráil brabhsálaí áitiúil bunaithe. ar an window.localStorage API agus window.sessionStorage. Nuair a úsáidtear localStorage/sessionStorage, léirítear na sonraí sna stórais chomhfhreagracha i bhformáid eochair/luacha, agus nuair a bhíonn OPFS in úsáid, tá dhá rogha ann: FS fíorúil a insamhlú ag baint úsáide as WASMFS agus cur i bhfeidhm ar leith de sqlite3_vfs, ag tairiscint sraith SQLite VFS bunaithe ar OPFS.

Chun SQLite a thógáil isteach i radharc WASM, úsáidtear an tiomsaitheoir Emscripten (is leor an síneadh ext/wasm a thógáil: “./configure —enable-all; make sqlite3.c; cd ext/wasm; make”). Is é an t-aschur ná comhaid sqlite3.js agus sqlite3.wasm, ar féidir iad a áireamh i do thionscadal JavaScript (mar shampla HTML agus JavaScript).

Foinse: oscailtenet.ru

Add a comment