Могу ли я создавать темы под названием update_i для различных видов обновлений и разбивать их на user_id в Kafka MQ? Я прошел через этот пост confluent.io: https://www.confluent.io/blog/how-to-choose-the-number-of-topicspartitions-in-a-kafka-cluster/. Кроме того, я знаю, что я не могу создать тему с динамическим количеством разделов. Эти два факта (пост и статическое число разделов Кафки). Каков механизм доставки?Kafka используется как механизм доставки в ленте новостей
ответ
В качестве возможного решения я бы предложил создать ряд разделов, а затем производитель настройки для выбора раздела с помощью следующего правила
user_id mod <number_of_partitions>
Это позволит вам поддерживать порядок сообщений для конкретного user_id.
Затем, если у вас есть потребитель, который обрабатывает только сообщения для определенного user_id, вы можете написать (низкоуровневый) потребитель, который будет читать определенный раздел и обрабатывать только сообщения, которые отправляются для конкретного клиента, и игнорировать все другие сообщения.
Могу ли я создавать темы под названием update_i для различных видов обновлений и разделять их с помощью user_id в Kafka MQ?
Если вы меня правильно поняли, ответ Да.
Что вам нужно будет сделать в двух словах:
конфигурации Тема: Определить необходимое количество разделов для вашей темы (ы). Как правило, количество разделов определяется на основе (1) ожидаемого масштаба/объема входящих данных, то есть стороны записи масштабирования и/или (2) требуемого параллелизма при потреблении сообщений для обработки, то есть Read- стороне масштабирования. См. https://www.confluent.io/blog/how-to-choose-the-number-of-topicspartitions-in-a-kafka-cluster/.
Написание сообщений по этим темам Kafka (иначе говоря, «производитель Kafka»): В Kafka сообщения представляют собой пары с ключом. В вашем случае вы должны установить ключ сообщения
user_id
. Затем, при использовании «разделителя» по умолчанию Kafka, сообщения для одного и того же ключа сообщения (здесь:user_id
) будут автоматически отправляться на тот же раздел - это то, чего вы хотите достичь.
- 1. Публикация комментария на ленте новостей
- 2. Как получить время на ленте новостей.?
- 3. Таинственная Cipher появился в моей ленте новостей
- 4. механизм доставки, Rational ClearCase
- 5. Как получить больше изображений в ленте новостей при обмене ссылками
- 6. Как получить фотографии каждой записи в стене или ленте новостей?
- 7. Как поделиться игрой «Старлинг» в ленте новостей Facebook
- 8. Получить последние последние записи в ленте новостей пользователей
- 9. Опубликовать изображение в ленте новостей Facebook из сети
- 10. FB после применения на ленте новостей пользователя в качестве приложения
- 11. Отсутствует содержание в ленте новостей: https://graph.facebook.com/me/home?
- 12. FbConnect: Публиковать на стене пользователя и в ленте новостей одновременно?
- 13. Простая копия доставки сообщений Simple-Kafka-consumer
- 14. Где используется механизм сценариев Java?
- 15. Как проверить, сколько дискового пространства используется Kafka
- 16. Как Facebook организует сообщения в новостной ленте
- 17. Какой механизм шаблонов используется в Lets-Chat?
- 18. Как очистить канал новостей?
- 19. Как я могу войти в Facebook в IOS и участвовать в ленте новостей?
- 20. Как применить настройки конфиденциальности в сообщениях, появляющихся в ленте новостей с MySQL?
- 21. Могу ли я получить доступ к ленте новостей с ограничениями по возрасту через API Facebook?
- 22. Как запросить у пользователя разрешение на публикацию в своем ленте новостей?
- 23. Как получить информацию о ленте новостей в facebook без токена аутентификации пользователя/доступа?
- 24. Как использовать Perl WWW :: Facebook :: API для публикации в ленте новостей пользователя?
- 25. Как кнопка для страницы Facebook показывает общее описание Facebook в ленте новостей
- 26. Как опубликовать в ленте новостей на facebook через приложение для Android
- 27. Как выбрать должности, созданные мной или моими друзьями в ленте новостей?
- 28. Какой механизм javascript используется внутри javafx?
- 29. Как узнать, какой механизм хранения используется в mongodb?
- 30. Есть ли механизм, чтобы узнать статус доставки удаленного оповещения
Почему вы хотите разделить на идентификатор пользователя? Вы хотите «подписаться» или обрабатывать только сообщения от определенных пользователей, а не других? Или вы думаете о том, что user_id является идентификатором конечного пользователя? –