Ilmus välja pgbalancer, PostgreSQL koormuse tasakaalustaja, mis põhineb tehisintellektil ning millel on REST API ja MQTT. Pgbalancer pakub ühenduste basseinide haldamist ja koormuse tasakaalustamist PostgreSQL-i jaoks, juhitakse HTTP-protokolli kaudu ja toetab reaalajas sündmuste voogedastust. Projekt on loodud pgpool-II haruna, tuues kaasa olulised täiustused nutikaks päringute marsruutimiseks. Kood on kirjutatud C keeles ja levitatud PostgreSQL avatud litsentsi alusel.
Peamised funktsioonid ja omadused:
- Ühenduste bassein ja koormuse tasakaalustus.
- Automaatne vigade üleminek toetusega vaatetorni ajastusele.
- Töökeskkonna jälgimine ja päringute häälestamine.
- SSL/TLS, PAM/LDAP autentimine.
- Ühilduvus PostgreSQL 13-18.
- Osa pgElephant utiliitidest, mis tagavad kõrge olemasolu. Saab integreerida pgraftiga Raft konsensuse jaoks, toetab pgSentineli jälgimist.
- AI-põhine koormuse tasakaalustus.
- Masinõppe algoritmid nutikaks päringute marsruutimiseks.
- Õppimine kohandub päringute reageerimisaja ja ressursside oleku järgi. serverile.
- Olekut hinnatakse reaalajas ja päringute tasakaalu ennustatakse.
- Kohandatavad kaaluparameetrid õppimiskiiruse ja juhuslike sündmuste ennustamise kiirusena.
- Integreerimise võimalus jälgimisplatvormide, nagu Prometheus ja Grafana, jaoks.
Halduse teostamine REST API kaudu.
- 17 HTTP/JSON funktsiooni klastrihalduseks.
- Integreeritud server API, mis töötab sadamal 8080.
- JWT HMAC-SHA256 tokenite autentimine.
- Statistika ja töörežiimi mõõdikute hankimine.
- Reageerimisaeg alla 10 ms.
Sündmuste voogedastus MQTT kaudu.
- MQTT-d kasutatakse sõlmede olekumuudatuste, vigade ülemineku ja ressursside oleku reaalajas kontrollimiseks.
- MQTT teemasid saab seadistada erinevat tüüpi sündmuste jaoks.
- Integreerimine Mosquitto, EMQX või mis tahes MQTT vahendajaga.
- Tagab automaatse teavitamise hädaolukordadest ja pakub transportkanalit klastrihalduseks.
- Käsurida utiliit bctl:
- Üksik liides, mis asendab rohkem kui 10 eraldi käsku "pcp_*".
- 3 väljundiformaati: tabelid, JSON või muutmata formaat.
- Väljundformaatide tabelid, mis on piiratud pgbalancer'i jooksval andmetel.
- Kaugjuhtimine ja laiendatud väljundrežiim.
- GitHubi tegevusvoog:
- build-matrix.yml: Ehitus mitmel platvormil (Ubuntu, macOS, Rocky Linux).
- Toetab PostgreSQL 13-18.
- DEB paketid Ubuntu 22.04/24.04, Debian 11/12 jaoks.
- RPM paketid Rocky 9, AlmaLinux 9, CentOS Stream 9 jaoks.
- Toetab Autotools koos autoreconf integratsiooniga.
- docs.yml: GitHub Pages'i dokumentatsiooni juurutamine.
Allikas: opennet.ru
