SQLite ji bo karanîna DBMS-ê di gerokek malperê de piştgirîya WASM zêde dike

Pêşdebirên SQLite projeyek pêş dixin da ku kapasîteya berhevkirina pirtûkxaneyê di koda navberê ya WebAssembly de, ku bikaribe di gerokek webê de bixebite û ji bo organîzekirina xebata bi databasê re ji serîlêdanên webê yên li JavaScript-ê maqûl e, çêbike. Koda ku piştgirî bide WebAssembly li depoya projeyê ya sereke hate zêdekirin. Berevajî API-ya WebSQL, ku li ser bingeha SQLite-yê ye, WASM SQLite bi tevahî ji gerokê veqetandî ye û bandorê li ewlehiya wê nake (Google biryar da ku piştgiriya WebSQL di Chrome-ê de betal bike piştî ku gelek lawaziyên di SQLite de dikarin bi WebSQL ve werin bikar anîn da ku êrîşî gerokê bike) .

Armanca projeyê peydakirina çarçoveyek JavaScript-a xebitandinê ye ku di fonksiyonê de bi API-ya SQLite re wekhev e. Pêşdebirên malperê ji bo xebitandina daneyan bi şêwaza sql.js an Node.js, pêwendiyek li ser C API-ya nizm û API-yek li ser bingeha mekanîzmaya Karkerê Web-ê, ku destûrê dide, navgînek objekt-oriented-asta bilind tê peyda kirin. hûn dikarin rêwerzên asînkron ên ku di mijarên cihê de hatine darve kirin biafirînin. Ji bo veşêrin tevliheviyên organîzekirina xebatê bi rêkan re li ser API-ya Web Worker-based, guhertoyek pêveka bernameyê ya ku li ser bingeha mekanîzmaya Sozê ye jî tê pêşve xistin.

Daneyên ku serîlêdanên webê di guhertoya WASM ya SQLite de hilînin dikarin di rûniştina heyî de bêne herêmî kirin (piştî barkirina rûpelê winda bibin) an jî li milê xerîdar werin hilanîn (di navbera danişînan de têne tomar kirin). Ji bo hilanîna daîmî, paşvekêşan ji bo danîna daneyan di pergala pelan a herêmî de bi karanîna OPFS (Pergala Pelê ya Origin-Private, pêvekek API-ya Gihîştina Pergala Pelê, ku niha tenê di gerokên ku li ser WebKit û Chromium de têne peyda kirin) û di hilanîna geroka herêmî ya bingehîn de têne amade kirin. li ser paceyê.localStorage API û window.sessionStorage. Dema ku Storage/sessionStorage-ya herêmî bikar tînin, dane li firotgehên têkildar bi rengek kilît/nirx têne xuyang kirin, û dema ku OPFS bikar tînin, du vebijark hene: simulasyona FS-ya virtual bi karanîna WASMFS û pêkanîna cihêreng a sqlite3_vfs, pêşkêşkirina qatek SQLite VFS ya bingehîn. li ser OPFS.

Ji bo avakirina SQLite di dîmenek WASM de, berhevkarê Emscripten tê bikar anîn (ji bo avakirina pêveka ext/wasm bes e: "./configure —enable-all; make sqlite3.c; cd ext/wasm; make"). Hilber pelên sqlite3.js û sqlite3.wasm e, ku dikarin di projeya weya JavaScriptê de cih bigirin (mînakek HTML û JavaScript).

Source: opennet.ru

Add a comment