Implementación en Java de Apache Dubbo, un framework de RPC y microservicios para crear comunicación, descubrimiento y gestión del tráfico entre servicios.
apache/thrift
Framework RPC independiente del lenguaje, con un generador de código que crea clientes y servidores interoperables en muchos lenguajes de programación.
Alternativa open source a:gRPC
Protocol Buffers
- Estrellas
- 10,958
- Forks
- 4,116
- Issues abiertos
- 29
- Último commit
- hace 15 horas
¿Qué es?
Apache Thrift es una pila de software ligera para llamadas a procedimientos remotos punto a punto. Ofrece abstracciones para el transporte de datos, la serialización de datos y el procesamiento a nivel de aplicación, junto con un generador de código que toma un lenguaje sencillo de definición de interfaces y produce código de cliente y servidor en muchos lenguajes.
Thrift admite 28 lenguajes de programación, por lo que los servicios escritos en distintos lenguajes pueden intercambiar datos e invocar los métodos de los demás. Está diseñado para que se pueda actualizar un servidor sin interrumpir a los clientes antiguos y para que los clientes nuevos puedan comunicarse con servidores antiguos, lo que facilita el versionado de API.
El compilador está implementado en C++, y el repositorio incluye bibliotecas para distintos lenguajes, suites de pruebas con pruebas entre lenguajes y un tutorial. Las compilaciones se realizan con Autotools o Docker.
Funciones clave
- 01Generación de código para clientes y servidores a partir de un lenguaje sencillo de definición
- 02Compatibilidad con 28 lenguajes de programación
- 03Capas intercambiables de transporte y serialización de datos
- 04Diseñado para mantener la compatibilidad durante actualizaciones de versiones no atómicas
- 05Incluye una suite de pruebas entre lenguajes
Casos de uso
- Crear microservicios escritos en distintos lenguajes que necesiten comunicarse entre sí
- Exponer una API RPC estable que deba seguir atendiendo a clientes antiguos durante las actualizaciones
- Compartir estructuras de datos entre un backend en C++ y clientes escritos en otros lenguajes
Inicio rápido
- 1
Genera los scripts de configure (solo es necesario al compilar desde el repositorio del código fuente, no desde un tarball)
./bootstrap.sh - 2
Configura la compilación; usa --with-boost si Boost está en una ubicación no estándar
./configure - 3
Compila Thrift
make - 4
Instala Thrift como superusuario
make install
Antes de usarlo
- Compilar desde el código fuente requiere autotools y dependencias previas como Boost, que se indican en la documentación de instalación (que podría estar desactualizada).
- Algunas bibliotecas de lenguajes, como las de Java, Ruby y PHP, deben instalarse manualmente con sus propias herramientas de compilación.
Temas
Preguntas frecuentes
- ¿Qué es thrift?
- Framework RPC independiente del lenguaje, con un generador de código que crea clientes y servidores interoperables en muchos lenguajes de programación. Apache Thrift es una pila de software ligera para llamadas a procedimientos remotos punto a punto. Ofrece abstracciones para el transporte de datos, la serialización de datos y el procesamiento a nivel de aplicación, junto con un generador de código que toma un lenguaje sencillo de definición de interfaces y produce código de cliente y servidor en muchos lenguajes.
- ¿thrift es gratuito? ¿Qué licencia tiene?
- thrift es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿thrift sigue mantenido?
- Mantenimiento activo. El último commit de thrift fue el 21 oct 2026.
- ¿Para qué puedo usar thrift?
- Crear microservicios escritos en distintos lenguajes que necesiten comunicarse entre sí Exponer una API RPC estable que deba seguir atendiendo a clientes antiguos durante las actualizaciones Compartir estructuras de datos entre un backend en C++ y clientes escritos en otros lenguajes
- ¿Cómo se instala thrift?
- Genera los scripts de configure (solo es necesario al compilar desde el repositorio del código fuente, no desde un tarball): ./bootstrap.sh Configura la compilación; usa --with-boost si Boost está en una ubicación no estándar: ./configure Compila Thrift: make Instala Thrift como superusuario: make install
- ¿Dónde consigo thrift?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/apache/thrift
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una biblioteca de serialización multiplataforma que permite leer datos binarios directamente, sin analizarlos ni desempaquetarlos antes.
Framework Java con opiniones definidas para crear aplicaciones y servicios Spring listos para producción con una configuración mínima.
Una biblioteca Java para convertir objetos Java a JSON y viceversa, incluso si no tienes el código fuente de esos objetos.
Plantilla de Clean Architecture para servicios Go que muestra cómo organizar el código con transportes REST, gRPC, AMQP RPC y NATS RPC.
Una colección de más de 30 utilidades para Windows que permite personalizar el escritorio y agilizar tareas cotidianas, desde organizar ventanas hasta reasignar teclas.