Se ha lanzado la versión 1.5.0 de Apache bRPC , que admite algunas funciones nuevas y correcciones de errores.
bRPC nació en el departamento de infraestructura de Baidu en 2014. Es un marco RPC de grado industrial escrito en C++. A menudo se usa en sistemas de alto rendimiento como búsqueda, almacenamiento, aprendizaje automático, publicidad y recomendación. Fue oficialmente de código abierto en GitHub en 2017 y donado oficialmente a la principal comunidad de código abierto del mundo Apache Software Foundation (ASF) en noviembre de 2018. El nombre de la versión externa de código abierto es Apache bRPC, que se ha convertido en un proyecto de nivel de incubación de ASF. .
Según los informes, bRPC ha sido reconocido y utilizado por más y más usuarios por sus funciones completas, escalables y de alto rendimiento.Después de más de cuatro años de incubación, el número de desarrolladores de bRPC ha aumentado varias veces y el número de estrellas en GitHub también ha superado los 14,4 K, actualmente cubre muchas industrias y campos como Internet, inteligencia artificial, búsqueda, recomendación, comercio electrónico y educación, ha sido ampliamente utilizado por muchas empresas y ha hecho contribuciones continuas al proyecto. número de instancias de servicio en línea ha superado los 600 W, y ahora se convierte en uno de los marcos RPC de código abierto más populares de la industria.
-
Sitio web oficial de Apache bRPC: https://brpc.apache.org
-
Enlace de descarga: https://brpc.apache.org/download/
-
Etiqueta de lanzamiento de GitHub: https://github.com/apache/brpc/releases/tag/1.5.0
La versión 1.5.0 cambia de la siguiente manera
nueva función
- La resolución DNS admite IPv6 por @jsl422 en #2139
- Soporte para nombrar subprocesos de muestreo de temporizadores y subprocesos de trabajo por @ehds en #2136
- Soporte para configurar diferentes configuraciones de TimeoutConcurrentConf para diferentes métodos @yanglimingcn en #2112
- Añadido is_hidden por @serverglen en #2205
- Se agregó concurrencia de servidor en el servicio incorporado de Status de @chenBright en #2097
- Se agregó la métrica Prometheus de " latencia promedio" de @Huixxi en # 2024
Corrección de errores
- Solucionar problema constante no utilizado en el ejemplo RDMA por @goldenbean en #2187
- Solucione el problema de longitud del búfer del nombre de host en DNS por @ehds en # 2179
- Solucione la fuga de memoria de socket por @chenBright # 2169
- Solucione el problema de que la espera no puede finalizar cuando el servicio de nombres no se inicia por @chenBright # 2162
- Solucione el error de ruta libprotoc que causa la falla de ci por @guodongxiaren en # 2132
- Solucione el problema de salida del servicio de nombres periódicos por @chenBright en # 2123
mejora de la función
- Eliminar wordexp por @wwbmmm en #2218
- Omita las verificaciones de flujo de trabajo innecesarias para los cambios que solo modifican los documentos de descuento por @kiminno en #2175
- Optimizado para negarse a inicializar FlatMap cuando nbucket es 0 por @jamesge
- Optimice algún código que viole las reglas ODR de C++ por @lrita en #2161
- FlatMap y FlatSet admiten el asignador de memoria del asignador personalizado por @old-bear en #2149
- Agregue BasicStringPiece::const_pointer tipo por @lrita en #2141
- Agregar sobrecarga de operadores a PtrContainer por @chenBright en #2107
- Optimice para garantizar que se pueda recibir al menos una solicitud para actualizar la latencia promedio de @yanglimingcn en #2106
- Optimice la sobrecarga de la CPU al usar rdma de @Tuvie en #2100
otro
- Encuentra bash con env por @wasphin
- Mejorar/agregar documentación de @haihuju, @tanzhongyi003, @wwbmmm, @wasphin, @maheshrjl, @chenBright, @NIGHTFIGHTING, @Huixxi, @zuyu, @kiminno, @wy1433, @20083017, @Thunderbrook