Apache bRPC 1.6.0 veröffentlicht

Apache bRPC Version 1.6.0 wurde veröffentlicht und unterstützt einige neue Funktionen und Fehlerbehebungen.

bRPC wurde 2014 in der Infrastrukturabteilung von Baidu geboren. Es handelt sich um ein in C++ geschriebenes RPC-Framework in Industriequalität, das häufig in Hochleistungssystemen wie Suche, Speicherung, maschinellem Lernen, Werbung und Empfehlungen verwendet wird. Es wurde 2017 offiziell auf GitHub als Open-Source-Version veröffentlicht und im November 2018 offiziell an die weltweit führende Open-Source-Community Apache Software Foundation (ASF) gespendet. Der Name der externen Open-Source-Version ist Apache bRPC, die zu einer ASF geworden ist Projekt auf Inkubationsebene.

Berichten zufolge wird bRPC aufgrund seiner umfassenden, skalierbaren und leistungsstarken Funktionen von immer mehr Benutzern erkannt und verwendet. Nach mehr als vier Jahren der Inkubation ist die Zahl der bRPC-Entwickler um ein Vielfaches gestiegen, und die Zahl ist gestiegen Die Anzahl der Sterne auf GitHub hat ebenfalls 14,4 K überschritten und deckt derzeit viele Branchen und Bereiche wie Internet, künstliche Intelligenz, Suche, Empfehlung, E-Commerce und Bildung ab Die Anzahl der Onlinedienstinstanzen hat 600 W überschritten und ist mittlerweile zu einem der beliebtesten Open-Source-RPC-Frameworks der Branche geworden.

Version 1.6.0 ändert sich wie folgt

neue Funktion

  • Unterstützen Sie den serverseitigen benutzerdefinierten Interceptor von @chenBright in #2137

  • Unterstützt den Client-TCP-Heartbeat-Erkennungsmechanismus von @chenBright in #2098

  • Unterstützung der Anzeige des entsprechenden Funktionsnamens im Protokoll durch @chenBright in #2247

  • Unterstützt den HTTP-Protokollserver zum kontinuierlichen Lesen von Daten von @TangSiyang2001 in #2210

  • Unterstützung für das Anhalten von Bthread in der Abfragelogik von DoublyBufferedData von @chenBright in #2225

  • Support-Server akzeptiert nur SSL-Verbindungen von @chenBright in #2231

  • Unterstützt die Backoff-Strategie für Wiederholungsversuche mit fester Zeit und die Backoff-Strategie für Wiederholungsversuche mit zufälliger Zeit von @chenBright in #2273

  • Unterstützt die von @chenBright in #2306 bestätigte Release-Version

Fehlerbehebung

  • Behebung des Problems, dass der Event-Dispatcher ausgeführt wird, bevor der Event-Dispatcher von @Tuvie in #2220 gestoppt wird

  • Korrigieren Sie Thread_local-Variablenoperationen, die vom Compiler durch @ehds in #2156 und @adonis0147 in #2248 optimiert werden

  • Beheben Sie das Problem, dass „wait_pthread“ niemals eine Zeitüberschreitung verursacht und zurückkehrt, wenn es durch ein Signal von @jenrryyou in #2086 unterbrochen wird

  • Behebung eines potenziellen Core-Dump-Problems von MultiDimension::delete_stats von @ketor in #2237

  • Kompilierungsfehler oder Warnungen von @adonis0147 in #2241, @thorneliu in #2243, @cdjingit in #2274 behoben

  • Ändern Sie das RDMA-Gerätefehlerprotokoll von @372046933 in #2249

  • Der Fix-Aufruf von copy_to_cstr konnte in #2253 zu einem Pufferüberlauf durch @jenrryyou führen

  • Beheben Sie das Problem des Ressourcenverlusts in mehreren HCA-Szenarien von @372046933 in #2252

  • Beheben Sie das instabile Problem des Keepalive-Unit-Tests von @wwbmmm in #2261

  • Beheben Sie das Problem, dass der Coredump-Stack unvollständig ist, wenn der Benutzercode eine Ausnahme von @smbzhang in #2256 auslöst

  • Behebung der fehlenden Aufgabengruppe BAIDU_GET_VOLATILE_THREAD_LOCAL von @JimChengLin in #2262

  • Behebung des Thread-Sicherheitsproblems beim gleichzeitigen Lesen und Schreiben von SSL durch @warriorpaw in #2180

  • Behebung des MacOS-CI-Fehlers, der durch die Protobuf-Version von @wwbmmm in #2287 verursacht wurde

  • Behebung eines bRPC-Absturzes, der dadurch verursacht wurde, dass mehrere Bibliotheken das SIGPIPE-Signal gleichzeitig ignorierten, von @lrita in #2301

  • Beheben Sie das Problem, dass FlatMap keine Elementspeicherausrichtung gemäß dem Datentyp von @ehds in #2288 durchführt

Funktionserweiterung

  • gdb_bthread_stack.py unterstützt das Drucken aller Bthread-Stack-Frames von @AIxWall in #2217

  • Optimieren Sie den redundanten Code der FlatMap-Operator[]-Funktion von @AIxWall in #2217

  • HTTP-Standardmethode wurde von @chenBright in #2168 auf „/“ gesetzt

  • Hedron-Kompilierungsbefehlsextraktor mit Bazel von @372046933 in #2250

  • Verwenden Sie Zufallszahlen, um den Offsetwert des Round-Robin-Load-Balancers von @xiaoma2015 in #2289 zu initialisieren

  • string_printf unterstützt die Übergabe der möglichen Länge des formatierten Strings durch @chenBright in #2270

  • Unterstützen Sie den Scoped_refptr-Move-Konstruktor von @byronhe in #2284

  • Unterstützt die Rvalue-Versionsüberladungsfunktion „execution_queue_execute“ von @chenBright in #2308

  • Graceful Exit Support SIGHUP-Signal von @old-bear in #2272

andere

  • Verbesserungen der Dokumentation

Guess you like

Origin www.oschina.net/news/253823/brpc-1-6-0-released