Zagayen sarrafa abubuwan da ke faruwa na Nginx
HTTP, WebSockets, da I/O na rumbun bayanai da ba ya hana sauran aiki ci gaba suna amfani da zagayen sarrafa abubuwan da ke faruwa na Nginx tare.
Tsarin bayan fage da ke ba SQL fifiko Matakin alfa
Wani sashe na Rust don Nginx da ke ba da damar kiran ayyukan PostgreSQL ta HTTP, kuma yake isar da sanarwar sauye-sauye ta WebSockets.
GitHubHTTP, WebSockets, da I/O na rumbun bayanai da ba ya hana sauran aiki ci gaba suna amfani da zagayen sarrafa abubuwan da ke faruwa na Nginx tare.
Umarnin da aka shirya tun da wuri da aika umarni a jere ba tare da jiran amsar kowannensu ba suna rage maimaita aiki da yawan zirga-zirga zuwa rumbun bayanai da dawowa.
Rubutun amsar JSONB na PostgreSQL yana wucewa ba tare da an canza shi ba. Kashe tantance bayanan da ake fitarwa kuma yana kauce wa nazarin tsarin JSON na amsar.
Sigar da aka gina da libpq da aka yi wa gyara tana kawar da yin kwafin jikin buƙata zuwa Rust da libpq ga buƙatun da suka cika sharuɗɗa. Aron ma'ajiyar bayanai ta atomatik yana aiki ga manyan buƙatun da suka cika sharuɗɗa ta haɗin sadarwar rumbun bayanai da ke amfani da rubutu a fili ba tare da ɓoyewa ba. Sigogin da aka gina bisa tsarin yau da kullum suna ci gaba da yin kwafi.
Gwajin aikin da ke sama ya yi amfani da ma'ajiyoyin bayanai da aka yi wa kwafi. Amsoshi da TLS har yanzu suna buƙatar yin kwafi.
# 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;Ayyukan SQL suna karɓa da mayar da JSON. Suna gudanar da tambayoyin rumbun bayanai, ƙa'idojin kasuwanci, da ba da izini.
Fayyace ayyukan da API ɗinka yake bayarwa. pgxio yana tantance JWT kuma yana kiran kowane aiki a cikin ma'amala.
Rajistar karɓar sanarwa ta WebSocket da aka ba izini tana aika alamun sauye-sauye. Manhajar abokin hulɗarka tana sake ɗauko kwafin halin yanzu ta HTTP.
Rajistar karɓar sanarwa tana isar da alamun sauye-sauye, ba kundin abubuwan da suka faru da ake adanawa na dindindin ba. Bayan sake haɗuwa, manhajojin abokan hulɗa suna sake yin rajista kuma suna ɗauko sabon kwafin halin yanzu.
Gudanar da waɗannan umarni daga kwafin ma'ajiyar lambar pgxio da yake kan na'urarka. Za ka buƙaci Docker Compose da Python 3.9 ko sabuwar siga fiye da haka.
Rukunin ayyukan haɓaka manhaja da aka haɗa yana sauraron haɗin sadarwa a localhost. pgxio manhaja ce a matakin alfa; wannan saitin don gwadawa ne a kan na'urarka.
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 '{}'