私は、PHPコードネームとMySQLのソーシャルウェブサイトを持っています。私は、マルチサーバー環境を扱うためにデータベースにユーザーセッションを保存しています。現在、データベースは1つしかありません。ソーシャルウェブサイトのユーザーセッション - 論理質問
1)複数のデータベース(マルチサーバー)を処理するには、どのようにユーザーセッションを保存するのですか?私はデータベースが複数のデータベース環境で動作しないと仮定します。
2)ユーザーに与えられたセッションIDは、データベースからの自動インクリメントかアプリケーションロジックから生成されたものですか?私はそれがGUIDでなければならないと思いますか?
3)私はsession_idに加えて、login_datetime、logout_Datatime、web/mobileなどのすべてのセッション関連の詳細を記録するuser_sessionテーブルを持っています。このテーブルは2段階で記述する必要があります:Whenユーザーはログオフ時に再度ログインします。質問は、ユーザーが日付を書き込むためにシステムが従わなければならないロジックは何かをログオンするときです。このPK IDはデータベース主導型の自動インクリメント値であり、メインセッションIDの作成後に作成されるため、システムにどのようなuser_sessionにデータを書き込むかはわかります。ですから、最後にuser_sessionテーブルを照会してuser_Session IDを見つけて書き込む必要があります。
デフォルトのPHPセッションメカニズムを使用したことがありますか? –
データベース内のユーザセッションをマルチサーバ環境と関連付けるのは何ですか?なぜPHPセッションがあなたに合っていないのですか?とにかくマルチデータベース環境で何が問題になっていますか?ここではどんな特別な問題がありますか? –
memcached for sessionsを使用すると、かなりうまく動作します。 – mfonda