@somethinginterest

Mysql выборка или cookie, оптимизация?

это наверное совсем глупый вопрос, но всё же:
например имеется страница, 10 000 уникальных посещений в день, база данных ~50 000 строк, какой вариант лучше-

1)mysql выборка пользователю только один раз, далее все данные задаются в куки, после чего при следующих перезагрузках страницы идёт проверка на существование куки и вытаскиваются данные из неё(либо если нет, то также коннект к бд, выборка, передача данных в куки и так далее)

2)при каждой перезагрузке страницы всегда mysql выборка

как бы по логике кажется очевидным первый вариант, чтобы в лишний раз не нагружать выборкой из 50к строк, но почему спрашиваю- потому что когда-то кто-то сказал что "так перескакивать из mysql в куки - плохо", может я неправильно понял человека, может он меня, но всё же. (+ сомневаюсь, ведь куками тоже пхп занимается, также нагрузка, но с другой стороны минимальная же, это ведь не 50к строк)

пожалуйста покончите с моими сомнениями раз и навсегда
  • Вопрос задан
  • 350 просмотров
Решения вопроса 1
ruFelix
@ruFelix
Предсказание будущего по руке, таро, кофе.
Когда ваши цифры будут в 1000 раз больше и не будет денег на нормальный сервер, тогда ваша вопрос станет актуальным. При таких цифрах кеш не будет освобождать ресурсы сервера, они и так должны быть свободны, соответственно смысла в кеше нет.

Если при таких цифрах у вас всё тормозит вам нужно, что то из: сменить архитектуру БД или разобраться как работать с БД или нанять админа.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@IceJOKER
Web/Android developer
Ни тот, ни другой вариант.
Юзайте кеш, сохраните результат выборку в файле или где-нибудь в memcache / redis и второй раз уже берите оттуда, это даст преимущество.

если уж данные слишком простые, то сохраните в сессиях(в куках они нахрен не нужны).

Так или иначе - старайтесь не дергать базу лишний раз.

p.s. храните настолько долго, насколько это возможно(или наоборот, при большом количестве посетителей кеш в 1 минуту даст огромное преимущество)
Ответ написан
Immortal_pony
@Immortal_pony Куратор тега MySQL
50к строк - это очень мало для БД. Выбрка, особенно с индексами будет происходить многовенно.
Волноваться о производителности стоит начать когда таблицы начнут переваливать за миллионы.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы