Postgres WASM-projektet har udarbejdet et browserbaseret miljø med PostgreSQL DBMS

Udviklingen af ​​Postgres WASM-projektet, som udvikler et miljø med PostgreSQL DBMS kørende inde i browseren, er blevet åbnet. Koden forbundet med projektet er open source under MIT-licensen. Det tilbyder værktøjer til at samle en virtuel maskine, der kører i en browser med et afisoleret Linux-miljø, en PostgreSQL 14.5-server og relaterede hjælpeprogrammer (psql, pg_dump). Den endelige byggestørrelse er omkring 30 MB.

Den virtuelle maskines interne funktioner oprettes ved hjælp af buildroot-scripts og køres i en browser ved hjælp af v86-emulatoren. Der findes en webshell til interaktion med PostgreSQL-værktøjer fra browseren. For at få adgang til den browserbaserede applikation, server PostgreSQL bruger en proxy over netværket til at udføre netværksanmodninger fra den virtuelle maskine og videresende trafik ved hjælp af Websocket API'en.

Hovedtræk ved Postgres WASM:

  • Lagring og gendannelse af DBMS-tilstand fra en fil eller browserbaseret lagring baseret på IndexedDB.
  • Hurtig start fra en fil med den virtuelle maskines gemte tilstand eller fuld start med genstart af emulatoren.
  • Mulighed for udvælgelse virtuel maskine fra 128 til 1024 MB hukommelse.
  • Indstilling af skriftstørrelsen på webterminalen.
  • Understøttelse af upload af filer til et virtuelt miljø, herunder mulighed for at uploade databasedumps.
  • Understøttelse af download af filer fra et virtuelt miljø.
  • Etablering af indgående og udgående netværksforbindelser, oprettelse af en tunnel til viderestilling af opkald til netværksport 5432.

Blandt de mulige anvendelsesområder for Postgres WASM er oprettelsen af ​​demonstrations- og træningssystemer, organisering af arbejde med data i offline-tilstand, analyse af data i offline-tilstand, test af PostgresSQL-funktionalitet og konfigurationer, oprettelse af et lokalt udviklermiljø, forberedelse af udsnit af en bestemt DBMS-tilstand til afsendelse til andre udviklere eller supporttjeneste, test af logisk replikering fra eksterne DBMS'er.

 Postgres WASM-projektet har udarbejdet et browserbaseret miljø med PostgreSQL DBMS


Kilde: opennet.ru