Kornizë është një implementim i koncepteve të Erlang për zhvillim në Go, ndërtuar mbi modelin e aktorëve me transparencë rrjeti dhe komponente të gatshme.
Karakteristikat kryesore në këtë version
- mTLS â ndĂ«rfaqja e re gen.CertAuthManager pĂ«r autentifikim reciprok me menaxhimin e grupeve CA
- Kalimi NAT â opsionet RouteHost dhe RoutePort pĂ«r nyjet pas NAT ose balancuesĂ«ve tĂ« ngarkesĂ«s
- Kontrolli i kohĂ«s sĂ« nisjes â InitTimeout kufizon kohĂ«n e inicializimit tĂ« proceseve (lokalisht dhe nĂ« distancĂ«)
- Koha e ndĂ«rprerjes â pĂ«rfundim i kontrolluar i nyjes me regjistrimin e proceseve tĂ« bllokuara
- etiketat pprof â çdo gorutina aktori etiket Ă«shtĂ« PID pĂ«r debug pĂ«rmes pprof
Aktorë të rinj (Biblioteka Extra)
- Lider â zgjedhje tĂ« shpĂ«rndara pĂ«r liderin me konsensus nĂ« stilin Raft. Failover automatik, mbrojtje nga split-brain pĂ«rmes kuorumit tĂ« shumicĂ«s
- Metrika â eksportues i metrikave Prometheus me mbledhjen automatike tĂ« telemetrisĂ« nga nyja dhe rrjeti
Procese të reja meta
- SSE (Ngjarje tĂ« DĂ«rguara nga Serveri) â transmetim njĂ«anshĂ«m server-klient pĂ«rmes HTTP me mbĂ«shtetje tĂ« plotĂ« pĂ«r specifikimin SSE
Performanca
- Lokalisht: 21M+ mesazhe/sekond
- NĂ« rrjet: ~5M mesazhe/sekond
- Pub/Sub i shpërndarë: 2.9M mesazhe/sekond dërgimi i 1,000,000 abonentëve në 10 nyje (10 mesazhe në rrjet në vend të 1M)
Korrigjime
- Gabim kritik: sinjalet e përfundimit (Link/Monitor exits) u refuzuan gabimisht për shkak të validimit të gabuar të incarnation në nivelin e rrjetit
Dokumentacioni
Rindërtuar plotësisht dhe e përfshirë në repozitor. Artikuj të rinj:
- Struktura e Projektit â organizimi i projekteve me nivele izolimi tĂ« mesazheve
- NdĂ«rtimi i njĂ« KlushtĂ«r â udhĂ«zues hap pas hapi pĂ«r sistemet e shpĂ«rndara
- Versionimi i Mesazheve â evolucioni i kontratave tĂ« mesazheve nĂ« klushtĂ«r
- Debugging â tags tĂ« ndĂ«rtimit, pprof, debugging i proceseve tĂ« ngecura
Linke
- Shembuj: https://github.com/ergo-services/examples
- Benchmark-et: https://github.com/ergo-services/benchmarks
- Repo: https://github.com/ergo-services/ergo
- Faqja e internetit: https://ergo.services
Burimi: linux.org.ru
