Please enable JavaScript.
Coggle requires JavaScript to display documents.
users bathing - Coggle Diagram
users bathing
Redis
Обработка событий обновления, добавления, удаления пользователя
Вместо полного обновления всех данных для пользователей, обновляются только изменения, которые произошли с последнего обновления. Это могут быть добавления или удаления друзей, а также изменения в датах рождения. Для реализации используется механизм Redis Streams, который позволяет эффективно обрабатывать последовательности событий.
-
-
-
-
-
Хранение данных в Redis
Способ 1: Ключи по дате
Описание: Для каждого дня создаётся отдельный ключ в Redis (birthdays:YYYY-MM-DD), где хранятся ID друзей.
Преимущества: Простота реализации, удобство очистки устаревших данных.
-
-
-
на основе id
Описание
Пользователи делятся на группы (батчи) по статическим правилам, например, используя хэш от user_id (модуль от числа пользователей).
Преимущества
Простота реализации, равномерное распределение пользователей по батчам.
Технологии
PHP для расчёта хэшей (md5, crc32).
RabbitMQ для отправки данных в очереди (php-amqplib).
-
-
-
как избежать обновления пользователей в одно время? (из интревью: как решить проблему истечения дня?)