Как сделать «просмотрено N раз» фунциональность для статьи на блоге? У статье есть счётчик просмотров. Мне интересно, как можно его обновлять так, чтобы это было эффективно? Ведь если обновлять его в лоб -- зашел пользовать, я сразу сделал sql запрос "update views_count +=1 where ..." -- будет слишком жирно. И такая точность не нужна.
Тогда как? Куда буферизовать кол-во пользователей, которые пришли, перед тем как сделать запрос "update views_count +=N where ..."?

21 Авг 2019 в 06:25
252 +1
1
Ответы
1

Один из способов обработки большого количества просмотров без перегрузки сервера SQL запросами - это использование кеша для хранения количества просмотров.

Вы можете создать кеш (например, с помощью Redis или Memcached) для хранения количества просмотров статьи. При каждом просмотре статьи, вы можете увеличивать счетчик в кеше, а затем периодически (например, один раз в минуту) сбрасывать значение из кеша в базу данных.

Таким образом, вы уменьшаете количество запросов к базе данных и снижаете нагрузку на сервер. В то же время, вы сохраняете приемлемую точность данных, так как кеш обновляется достаточно часто.

Чтобы реализовать это, вам необходимо добавить логику работы с кешем в вашем коде обработки просмотров статьи. Вы также можете использовать фреймворки, которые уже имеют встроенную поддержку кеширования, чтобы упростить процесс.

20 Апр 2024 в 13:18
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир