Ukukhishwa kokuqala kwe-pgbalancer, ibhalansi yokulayisha ye-PostgreSQL enikwe amandla yi-AI ene-REST API ne-MQTT, kushicilelwe. I-Pgbalancer ihlinzeka ngokuhlanganisa kokuxhumana nokulinganisa ukulayisha kwe-PostgreSQL, iphethwe nge-HTTP, futhi isekela ukusakazwa komcimbi wesikhathi sangempela. Iphrojekthi iyimfoloko ye-pgpool-II enokuthuthukiswa okubalulekile komzila wesicelo ohlakaniphile. Ikhodi ibhalwe ngo-C futhi isatshalaliswa ngaphansi kwelayisensi yomthombo ovulekile we-PostgreSQL.
Izici eziyinhloko namandla:
- Ukuhlanganisa ukuhlanganisa nokulinganisa umthwalo.
- I-failover ezenzakalelayo ngokusekelwa kwe-watchdog timer.
- Ukuqapha ukusebenza kanye nokugcinwa kwesikhashana kwemibuzo.
- Ukufakazela ubuqiniso nge-SSL/TLS, PAM/LDAP.
- Ihambisana ne-PostgreSQL 13-18.
- Iyingxenye yezinsiza zokutholakala okuphezulu kwe-pgElephant. Ingahlanganiswa ne-pgraft ye-Raft consensus futhi isekele ukuqapha kwe-pgSentinel.
- Ukulinganisa kokulayisha okunamandla e-AI.
- Ama-algorithms wokufunda komshini womzila wesicelo ohlakaniphile.
- Ukuqeqeshwa kulungiswa kuye ngesikhathi sokuphendula kwezicelo kanye nesimo sezinsizakusebenza. iseva.
- Umbuso uhlolwa ngesikhathi sangempela futhi ukulinganisa kwesicelo kuyabikezelwa.
- Imingcele yesisindo elungisekayo yezinga lokufunda nezinga lokuqagela lomcimbi okungahleliwe.
- Amathuba okuhlanganiswa nezinkundla zokuqapha ze-Prometheus kanye ne-Grafana.
Ukuphatha nge-REST API.
- 17 Imisebenzi ye-HTTP/JSON yokuphatha iqoqo eliphelele.
- Iseva ye-API ehlanganisiwe esebenza ku-port 8080.
- Ukuqinisekisa ngamathokheni e-JWT HMAC-SHA256.
- Ukuthola izibalo namamethrikhi mayelana nesimo semodi yokusebenzisa.
- Isikhathi sokuphendula singaphansi kuka-10 ms.
Ukusakazwa komcimbi we-MQTT.
- I-MQTT isetshenziselwa ukushicilela izinguquko zesimo se-node, i-faillover, nokuhlolwa kwezempilo kwensiza yesikhathi sangempela.
- Ungalungiselela izihloko ze-MQTT zezinhlobo ezahlukene zemicimbi.
- Ukuhlanganiswa noMosquitto, i-EMQX nanoma yimuphi umthengisi we-MQTT.
- Ihlinzeka ngesaziso esizenzakalelayo semicimbi engajwayelekile futhi inikeza isiteshi sokuthutha se-cluster orchestration.
- bctl uhlelo lokusebenza lomugqa womyalo:
- Isixhumi esibonakalayo esisodwa esingena esikhundleni semiyalo "pcp_*" engaphezu kweyi-10 ehlukene.
- 3 amafomethi okukhiphayo: amathebula, i-JSON noma ifomethi engashintshiwe.
- Okukhiphayo kwamathebula afomethiwe anozimele bedatha yesikhathi sokusebenza se-pgbalancer.
- Isilawuli kude nemodi yokukhipha enwetshiwe.
- I-GitHub Actions Workflow:
- build-matrix.yml: Сборки на нескольких платформах (Ubuntu, macOS, Rocky Linux).
- Ukusekelwa kwe-PostgreSQL 13-18.
- DEB-пакеты для Ubuntu 22.04 / 24.04, Debian 11 / 12.
- RPM-пакеты для Rocky 9, AlmaLinux 9, CentOS Ukusakaza 9.
- I-Autotools isekela ngokuhlanganisa kwe-autoreconf
- docs.yml: Ukuthunyelwa kwemibhalo ye-GitHub Pages.
Source: opennet.ru
