SQLite veb brauzerdə DBMS-dən istifadə üçün WASM dəstəyi əlavə edir

SQLite tərtibatçıları kitabxananı veb-brauzerdə işləyə bilən və JavaScript-də veb proqramlardan verilənlər bazası ilə işin təşkili üçün uyğun olan WebAssembly aralıq koduna toplamaq qabiliyyətini həyata keçirmək üçün layihə hazırlayırlar. WebAssembly-i dəstəkləmək üçün kod əsas layihə deposuna əlavə edildi. SQLite-a əsaslanan WebSQL API-dən fərqli olaraq, WASM SQLite brauzerdən tamamilə təcrid olunub və onun təhlükəsizliyinə təsir göstərmir (SQLite-də bir neçə boşluq WebSQL vasitəsilə brauzerə hücum etmək üçün istifadə oluna bildikdən sonra Google Chrome-da WebSQL dəstəyini ləğv etmək qərarına gəlib) .

Layihənin məqsədi funksionallıq baxımından SQLite API ilə eyni olan işləyən JavaScript çərçivəsini təmin etməkdir. Veb tərtibatçıları sql.js və ya Node.js üslubunda verilənlərlə işləmək üçün yüksək səviyyəli obyekt yönümlü interfeys, aşağı səviyyəli C API üzərində bağlayıcı və Web İşçisi mexanizminə əsaslanan API ilə təmin edilir. siz ayrı-ayrı mövzularda icra edilən asinxron işləyicilər yaratmalısınız. Web Worker əsaslı API üzərində axınlarla işin təşkilinin incəliklərini gizlətmək üçün proqram interfeysinin Promise mexanizmi əsasında versiyası da hazırlanır.

Veb proqramlarının SQLite-in WASM versiyasında saxladığı məlumatlar cari sessiyada lokallaşdırıla bilər (səhifənin yenidən yüklənməsindən sonra itirilir) və ya müştəri tərəfində saxlanıla bilər (sessiyalar arasında saxlanılır). Daimi saxlama üçün OPFS (Origin-Private FileSystem, Fayl Sistemi Giriş API-nin genişləndirilməsi, hazırda yalnız WebKit və Chromium əsaslı brauzerlərdə mövcuddur) və yerli brauzer yaddaşına əsaslanan məlumatların yerli fayl sisteminə yerləşdirilməsi üçün arxa uçlar hazırlanmışdır. window.localStorage API və window.sessionStorage-də. LocalStorage/sessionStorage istifadə edərkən, məlumatlar müvafiq mağazalarda açar/dəyər formatında əks olunur və OPFS istifadə edərkən iki seçim var: WASMFS istifadə edərək virtual FS-nin simulyasiyası və sqlite3_vfs-in ayrıca tətbiqi, SQLite VFS qatını təklif etmək. OPFS-də.

SQLite-ni WASM görünüşündə qurmaq üçün Emscripten kompilyatorundan istifadə olunur (ext/wasm genişlənməsini qurmaq kifayətdir: “./configure —enable-all; make sqlite3.c; cd ext/wasm; make”). Çıxış JavaScript layihənizə daxil edilə bilən sqlite3.js və sqlite3.wasm fayllarıdır (HTML və JavaScript nümunəsi).

Mənbə: opennet.ru

Добавить комментарий