Я только что отодвинулся от своей собственной платформы MVC до сообщества, поддерживал один (CodeIgniter). Я просто преобразовываю свои сессии в функции CodeIgniter и замечаю, что они, по умолчанию, хранят данные сессии в зашифрованном cookie. Альтернатива, которую они предлагают, является сессиями базы данных, но не сессиями файла серверной стороны как собственная библиотека PHP.
Теперь на моем сайте, я буду создавать безопасную панель бэкенда, таким образом, зашифрованный cookie не будет походить на умную опцию, но я particually не хочу должным быть соединяться со своей базой данных излишне, поскольку это не очень быстро (совместно использованный хостинг).
Я задаюсь вопросом, чем обоснованием позади них была бы не поддержка собственных сессий и рассматриваются ли сессии базы данных или сессии файла серверной стороны обычно как более оптимальный вариант.
Спасибо.
В основном, для хранения данных сеанса, люди обычно используют одно из трех решений:
файлы являются наиболее используемыми, так как это По умолчанию - и он работает отлично в большинстве случаев - но есть хотя бы одна ситуация, в которой она не работает: когда у вас есть несколько серверов, и ваши пользователи сбалансированы на тех (то есть когда 1 пользователь не всегда на том же сервере) .
В таком виде ситуации необходимо иметь центральное / общее место для хранения сеансов - и базы данных соответствуют этому описанию; И легко настроить, а также приложения PHP обычно работают с базой данных.
И как базы данных не масштабируются, что хорошо, особенно для пишетов, вы иногда используете, вместо этого, что-то вроде Memcached: Mecanism, который хранит данные в RAM (быстрее) , Accross как можно больше серверов. Хотите / нужно (масштабируется хорошо) .
Какое решение вы должны использовать?
Ну, в каком из этих ситуаций вы находитесь?