Janë hapur zhvillimet e projektit Postgres WASM, i cili zhvillon një ambient me bazën e të dhënave PostgreSQL që funksionon brenda shfletuesit. Kodi i lidhur me këtë projekt është i hapur nën licencën MIT. Ofron mjete për ndërtimin e një makinerie virtuale që punon në shfletues me një ambient të reduktuar Linux, serverin PostgreSQL 14.5 dhe utilitetet e shoqëruara (psql, pg_dump). Përmasa e ndërtimit përfundimtar është rreth 30 MB.
Mënyra e funksionimit të makinës virtuale formohet përmes skripteve buildroot dhe aktivizohet në shfletues duke përdorur emulatorin v86. Për ndërveprimin me utilitetet PostgreSQL nga shfletuesi ofrohet një ndërfaqe web. Për të arritur te PostgreSQL i aktivizuar në shfletues serverit përdoret një proxy që kalon trafikun përmes API-së Websocket.
Funksionalitetet kryesore të Postgres WASM:
- Ruajtja dhe rikuperimi i gjendjes së DB nga një skedar ose nga ruajtja e shfletuesit bazuar në IndexedDB.
- Fillim të shpejtë nga një skedar me gjendjen e ruajtur të makinës virtuale ose një fillim të plotë me rinisjen e emulatorit.
- Mundësia për ndarjen makinën virtuale nga 128 deri në 1024 MB memorie.
- Konfigurimi i madhësisë së shkrimit në terminalin web.
- Mbështetje për ngarkimin e skedareve në ambientin virtual, përfshirë mundësinë për të ngarkuar dumpet e DB.
- Mbështetje për shkarkimin e skedareve nga ambienti virtual.
- Instalimi i lidhjeve rrjetore hyrëse dhe dalëse, krijimi i një tuneli për kalimin e kërkesave në portin rrjetor 5432.
Ndër përdorimet e mundshme të Postgres WASM përmendet krijimi i sistemeve demonstrative dhe arsimore, organizimi i punës me të dhëna në modin offline, analiza e të dhënave kur ndodhet në modin offline, testimi i funksionalitetit dhe konfigurimeve të PostgreSQL, krijimi i një ambienti lokal për zhvillues, përgatitja e copëzave të një gjendjeje të caktuar të DB për t'u dërguar zhvilluesve të tjerë ose në shërbimin mbështetës, testimi i replikimit logjik me DB të jashtme.

Burimi: opennet.ru
