Je suis nouveau à Kafka et le scénario que j'essaye d'accomplir en utilisant Apache Kafka est:Apache Kafka: Peut-on limiter le message à lire par seulement 1 consommateur?
J'ai 3 producteurs qui envoient des instructions sur un sujet particulier dans Kafka. J'ai environ 35 consommateurs qui ramasse une instruction à la fois et exécute la tâche mentionnée dans le jeu d'instructions. Une fois terminé, il affichera les mises à jour à un autre sujet dans Kafka.
Exigences.
- Une instruction lue par 1 consommateur ne doit pas être donné à un autre pour le traitement
- Priorité des messages * - pas une exigence obligatoire
- seulement 1 instruction doit être pris à un moment pour le traitement.
Je sais que cela peut être réalisé en utilisant JMS. Mais mon organisation a déjà une configuration Kafka prête dans le cadre de l'installation HDFS de l'ère du Cloud. Donc, l'utilisation de Kafka pour y parvenir est la plus préférée.
J'ai fait un tour de table pour trouver une solution à ce problème. Mais je n'étais pas en mesure de trouver une réponse appropriée à ma première exigence et la plus importante.
Des suggestions? Et merci d'avance.!
Jetez un oeil ici: http://stackoverflow.com/documentation/apache-kafka/5449/consumer-groups-and-offset-management –
De plus, vous pouvez configurer chaque consommateur pour recevoir un seul message par appel via le paramètre "max.poll.records = 1". Voir http://kafka.apache.org/documentation#newconsumerconfigs –