Обработчик сеансов, «База данных» или «Нет»?

11

В глобальной конфигурации Joomla есть опция «Session Handler», в её описании написано

Механизм, с помощью которого Joomla! идентифицирует пользователя, когда он подключен к веб-сайту с использованием непостоянных файлов cookie.

Однако я все еще не понимаю, что он пытается объяснить.

Каковы преимущества и недостатки обоих? Как узнать, какой вариант мне подходит?

Хунг Тран
источник
1
Несколько ответов ниже, по-видимому, поддерживают вариант «Нет», однако, также проверьте этот другой вопрос, который предполагает, что метод «Нет» (т.е. файлы ) по умолчанию для хранения сеанса является синхронным, т.е. сеанс блокируется при записи в.
MrWhite

Ответы:

3

В параметре none он использует дескриптор сеанса php по умолчанию, который использует файлы для хранения данных сеанса. В опции базы данных он использует базу данных для хранения данных сеанса. На http://www.tuxradar.com/practicalphp/10/3/7 вы можете узнать больше о файлах и базах данных в сеансе

csbenjamin
источник
6

Как и в ответе @ codinghands, запись сеанса в базу данных привела к тому, что у нас было слишком много соединений:

/programming/14506124/joomla-is-causing-too-many-connections-database-errors

База данных не была повреждена, но она вывела наш сайт из строя. Нам удалось решить эту проблему, изменив обработчик сеанса на none.

Кроме того, вы можете посмотреть, как PHP хранит ваш сеанс. Наши записывались на жесткий диск. Это было медленно (до ~ 200 мс) и не очень хорошо, если вы хотите сбалансировать нагрузку на свои серверы. Опция mysql была бы хороша для балансировки нагрузки, если вы можете обойти «проблему слишком большого количества соединений»

ContextSwitch
источник
3

Просто добавьте мои 2 цента: в более ранних версиях Joomla я обнаружил, что _sessionsтаблица часто портится на сайтах, принимающих большое количество уникальных посетителей и, следовательно, на открытых сеансах, что приводит к остановке сайта до тех пор, пока таблица не будет отремонтирована / очищена. Использование None решило это для меня.

codinghands
источник