Войти Регистрация
System design

24. Счётчик лайков под постами VK

Средняя

Пройдите шаги: уточните требования, оцените нагрузку, выберите решения, нарисуйте схему.

Под каждым постом показываем число лайков и подсвечиваем сердечко, если лайк поставил сам читатель. Повторное нажатие снимает лайк.

Для расчёта: 1,2 млрд лайков в день, вечером втрое больше среднего. Лента открывается 19 тыс. раз в секунду, в порции 20 постов.

Пост с новостью о матче или розыгрышем от крупного паблика собирает 50 тыс. лайков в минуту в первые полчаса.

В работе: Лайк — самое частое действие в соцсети, и его счётчик виден под каждым постом в ленте.

Как проверяем Шаги с вариантами и расчётами проверяем автоматически: число засчитано, если оно в пределах допуска от эталона. Схему вы оцениваете сами по чек-листу. Зачёт — схема набрала 60 % чек-листа и верны 70 % остальных пунктов. Ответ один на подход: после него показываем разбор.
счётчикигорячий ключбатчингидемпотентность

Источник: на задачах VK: лайки и счётчики постов. Условие пересказано своими словами.

  1. Уточнить требования — Что выяснить до схемы?
  2. Оценить нагрузку
  3. Запись счётчика — Как обновлять число лайков вирусного поста?
  4. Подсветка своего лайка — Как быстро узнать, лайкнул ли читатель каждый из 20 постов порции?
  5. Схема — Опишите путь нажатия «лайк» и путь чтения счётчиков для ленты.