Pregunta

La pregunta básica, que plataformas y lenguajes hace Apache Kafka en la actualidad de apoyo?

¿Fue útil?

Solución

Kafka está escrito en Scala, lo que significa que se ejecuta en el JVM, por lo que puede ejecutarse de manera efectiva en cualquier sistema operativo que admita el JVM.Sin embargo, los corredores extraen un enorme aumento de rendimiento utilizando el caché de búfer de kernel del sistema operativo.No estoy seguro de lo bueno que es esto con un sistema que no sea unix como Windows.La base de código fuente de Kafka proporciona soporte de primera clase para clientes Scala y Java.También puede encontrar clientes productores y consumidores en idiomas como PHP, C ++, Python, etc. debajo del directorio de Contrib.

Otros consejos

Apache Kafka funciona bien y es más estable y eficiente en Linux (ya sea de metal desnudo Linux, Linux VMs en nubes privadas o públicas, o basado en Linux ventana acoplable contenedores).Kafka ha sido conocido para ejecutar en Windows, pero la mayoría de los vendedores que comercialmente apoyo Kafka no extender su apoyo a Windows para servidores de producción por lo que es "apoyada por la comunidad" por el Kafka de la comunidad.Kafka también ejecuta muy bien en macOS para el desarrollo.

El Apache Kafka distribución incluye soporte para Java y Scala clientes, pero sólo el más grande de Kafka comunidad ha creado una larga lista de clientes para otros idiomas.Una buena lista de las opciones disponibles para los clientes es el apache kafka wiki aquí: https://cwiki.apache.org/confluence/display/KAFKA/Clients

Usted encontrará que para algunos lenguajes (como C#/.Net, Python, o Ir) hay 2 o 3 o incluso más opciones para las bibliotecas de cliente.Algunos están al día con las nuevas Kafka protocolo de cable de cambios tales como Exactamente una Vez la Semántica, y los Encabezados de los mensajes que se han añadido en Apache Kafka 0.11 o marcas de tiempo y que fueron añadidas en 0.10, o las mejoras en la seguridad y el nuevo consumidor de la api añadido en 0.9, y otros no lo son.Algunos tienen el conjunto completo de funciones/métodos en Java (como seek(), o grupo de consumidores de gestión, o interceptores), pero otros no.Algunos están escritos exclusivamente en el idioma de destino y otros son contenedores en el librdkafka C/C++ biblioteca.Algunos son comercialmente apoyado por un proveedor y otros no, por lo que elegir en base a sus necesidades en términos de funcionalidad, estabilidad, entorno de ejecución, y la compatibilidad.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top