A keretrendszer az Erlang koncepcióinak megvalósítása Go nyelven, aktormodell alapján, hálózati átláthatósággal és kész komponensekkel.
Főbb újdonságok ebben a verzióban
- mTLS — új gen.CertAuthManager interfész a kölcsönös hitelesítéshez a CA pulzusok kezelésével
- NAT áthaladás — RouteHost és RoutePort opciók NAT mögötti csomópontok vagy terheléselosztók számára
- Indítási idő ellenőrzése — Az InitTimeout korlátozza a folyamatok inicializálásának idejét (helyben és távolban)
- Leállítási időtúllépés — a csomópont vezérelt leállítása, a lógó folyamatok naplózásával
- pprof címkék — minden aktor goroutine PID-jét megcímkézik a pprof általi hibakereséshez
Új aktorok (Extra Könyvtár)
- Vezető — elosztott vezetőválasztás Raft stílusú konszenzussal. Automatikus failover, split-brain védelem a többségi kvórum révén
- Metrikák — Prometheus metrika exportáló automatikus telemetria gyűjtéssel csomópont és hálózat számára
Új meta-folyamatok
- SSE (Szerver által küldött események) — egyirányú szerver-ügyfél streaming HTTP-n keresztül, teljes SSE specifikáció támogatással
Teljesítmény
- Helyben: 21M+ üzenet/másodperc
- Hálózaton: ~5M üzenet/másodperc
- Elosztott Pub/Sub: 2.9M üzenet/másodperc 1,000,000 felhasználónak történő kézbesítés 10 csomóponton (10 hálózati üzenet 1M helyett)
Javítások
- Kritikus hiba: A leállító jelek (Link/Monitor exits) helytelenül lettek elutasítva a hálózati rétegben a nem megfelelő incarnáció ellenőrzés miatt
kódkönyvtárra lépésével érheti el.
Teljesen újraírás és a tárolóba való beillesztés. Új cikkek:
- Projekt struktúra — projektek szervezése üzenetek izolációs szintjeivel
- Kluster építése — lépésről lépésre útmutató elosztott rendszerekhez
- Üzenet verziózás — az üzenet szerződések fejlődése klaszterekben
- Hibakeresés — build címkék, pprof, lógó folyamatok hibakeresése
Hivatkozások
- Példák: https://github.com/ergo-services/examples
- Benchmarkok: https://github.com/ergo-services/benchmarks
- Tárhely: https://github.com/ergo-services/ergo
- Weboldal: https://ergo.services
Forrás: linux.org.ru
