Mzunguko wa matukio wa Nginx
HTTP, WebSockets, na I/O ya hifadhidata isiyozuia utekelezaji vinashiriki mzunguko wa matukio wa Nginx.
Backend inayotanguliza SQL Alfa
Moduli ya Rust kwa Nginx inayowezesha kufikia vitendakazi vya PostgreSQL kupitia HTTP na kuwasilisha arifa za mabadiliko kupitia WebSockets.
GitHubHTTP, WebSockets, na I/O ya hifadhidata isiyozuia utekelezaji vinashiriki mzunguko wa matukio wa Nginx.
Amri zilizoandaliwa mapema na utumaji wa amri mfululizo bila kusubiri jibu la kila moja hupunguza kazi inayorudiwa na safari za kwenda na kurudi kwenye hifadhidata.
Maandishi ya jibu la JSONB la PostgreSQL hupitishwa bila kubadilishwa. Kuzima uthibitishaji wa matokeo pia huepusha uchanganuzi wa JSON ya jibu.
Toleo lililojengwa kwa libpq iliyofanyiwa marekebisho huondoa kunakili mwili wa ombi ndani ya Rust na libpq kwa maombi yanayokidhi masharti. Uazimaji wa kiotomatiki wa bafa hutumika kwa maombi makubwa yanayokidhi masharti kupitia miunganisho ya hifadhidata ya maandishi wazi yasiyosimbwa kwa usalama. Matoleo ya kawaida yanaendelea kunakili.
Kipimo cha utendaji hapo juu kilitumia bafa zilizonakiliwa. Majibu na TLS bado huhusisha kunakili.
# HTTP endpoints
pgxio_endpoint list_tasks
web.list_tasks read_only;
pgxio_endpoint create_task
web.create_task;
# WebSocket subscription authorization
pgxio_stream tasks
web.authorize_tasks;Vitendakazi vya SQL hupokea na kurudisha JSON. Hushughulikia hoja, kanuni za biashara, na uidhinishaji.
Bainisha vitendakazi vinavyopatikana kupitia API yako. pgxio hukagua JWT na kuita kila kitendakazi ndani ya muamala.
Usajili wa WebSocket ulioidhinishwa hutoa ishara za mabadiliko. Programu yako ya mteja hupakua tena nakala ya hali ya sasa kupitia HTTP.
Usajili huwasilisha ishara za mabadiliko, si kumbukumbu ya matukio inayohifadhiwa kwa kudumu. Baada ya kuunganishwa tena, programu za wateja hujisajili upya na kupakua nakala mpya ya hali ya sasa.
Endesha amri hizi kutoka kwenye nakala ya hazina ya pgxio iliyo tayari kwenye mashine yako. Utahitaji Docker Compose na Python 3.9 au toleo jipya zaidi.
Mkusanyiko wa huduma za uundaji programu uliotolewa husikiliza kwenye localhost. pgxio ni programu ya hatua ya alfa; usanidi huu ni wa kuijaribu kwenye mashine yako.
bin/pgxio init
bin/pgxio up
TOKEN=$(bin/pgxio token alice)
curl http://localhost:8080/v1/create_task \
-H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' \
-d '{"title":"Hello from pgxio"}'
curl http://localhost:8080/v1/list_tasks \
-H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' \
-d '{}'