web-dev-qa-db-ja.com

セッションハンドラ、「データベース」または「なし」?

Joomlaのグローバル構成には、オプション「セッションハンドラー」があります。

Joomla!のメカニズム!非永続的なCookieを使用してWebサイトに接続したユーザーを識別します。

しかし、私はそれが何を説明しようとしているのかまだ理解していません。

両方の長所と短所は何ですか?どのオプションが私に良いのかをどうやって知るのですか?

11
Hung Tran

Noneオプションでは、ファイルを使用してセッションデータを格納するデフォルトのphpセッションハンドルを使用します。データベースオプションでは、データベースを使用してセッションデータを格納します。 http://www.tuxradar.com/practicalphp/10/3/7 では、セッション内のファイルとデータベースの詳細を知ることができます

3
csbenjamin

@codinghandsの回答と同様に、セッションをデータベースに書き込むと、接続が多すぎます。

https://stackoverflow.com/questions/14506124/joomla-is-causing-too-many-connections-database-errors

データベースは破損していませんでしたが、サイトがダウンしました。セッションハンドラーをnoneに変更することで、なんとか解決しました。

さらに、PHPがセッションを保存する方法を調べたいと思うかもしれません。私たちのセッションはハードディスクに書き込まれていました。これは遅く(最大200ms))、以下の場合は良くありません。サーバーの負荷を分散したい場合「接続が多すぎる問題」を回避できる場合、mysqlオプションは負荷分散に適しています。

6
ContextSwitch

ちょうど私の2セントを追加するには:以前のバージョンのJoomlaで_sessionsテーブルは、多くの一意のビジターを受け取るサイトで破損していることが多く、セッションが開いているため、テーブルが修復または消去されるまでサイトがダウンします。 なしを使用すると、これが解決されました。

3
codinghands