когда использовать базу данных для хранения сессии в PHP - PullRequest
0 голосов
/ 25 марта 2012

Когда лучше всего использовать базу данных в качестве хранилища сеансов в PHP? Я знаю, что 1 экземпляр будет, когда я делю нагрузку запроса на несколько серверов, мне нужно будет поддерживать состояние сеанса на этих серверах.

Статья, которую я сейчас читаю http://onlamp.com/pub/a/php/excerpt/webdbapps_8/index.html?page=2 говорит

Использование файлов в качестве хранилища сеансов подходит для большинства приложений в количество одновременных сессий которых ограничено

Я не понимаю, почему количество одновременных сеансов должно влиять на предпочтительное хранилище сеансов.

Существуют ли другие причины, по которым мне следует сохранять данные сеансов в базе данных?

1 Ответ

0 голосов
/ 25 марта 2012

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

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

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

...