Задать вопрос
@hesy

Какие данные можно хранить в кэше, а какие лучше в бд?

Добрый день!

Задался вопросом, какие данные стоит хранить в кэше (memcached), а какие лучше в базе данных?
Понятное дело, что пароль точно не стоит хранить в кэше :)

Простой пример - нужно сгенерировать код авторизации который будет действителен, например, 5 минут.
Есть два варианта решения:
1. Записать код авторизации в кеш указав срок - 5 минут.
2. Записать код авторизации и время создания в бд, и по крону проверять актуальность (либо в момент вызова, но тут возможно захламление старыми кодами, и опять же придётся чистить кроном)

1-ый вариант выглядит самым симпатичным, но правильно ли будет такая реализация?

Поделитесь другими примерами)
  • Вопрос задан
  • 440 просмотров
Подписаться 1 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
Хранят данные только в базе.
В кэше данные не хранят. Вообще. "Хранить данные в кэше" - это оксюморон. Кэш - это противоположность хранилищу. Хранилище гарантирует наличие данных, а кэш не гарантирует ничего, и при отсутствии данных лезет в хранилище.

Кэш служит для ускорения доступа к данным, а не для их хранения
Ответ написан
Комментировать
2ord
@2ord
В memcached стоит хранить (короткоживущие) пользовательские сессии. Сессии не хранят пароли, а только сгенерированные идентификаторы.
Пароли нужны серверу только на этапе идентификации пользователя.
Кроме того, читай ответ FanatPHP .
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽