xai1981's blog

http://twitter.com/xai1981

PHPのSESSIONと冗長化のお話

リリース間近になって気が付いたことがありました。

今作っているサイトは元々のベース・自作のフレームワークがあって そちらを変更して利用しています。

元々のログインの仕組みは COOKIE に認証トークンを記憶させて 持回る仕組みでしたが

今回は SESSION を利用してサーバー側によく使うデータを記憶させて SESSION_ID を COOKIE に保持して認証する仕組みに変更しました。

いざ本番リリースすると ログインの動きが妙です。

調べて見たら 本番は冗長化(3台構成)されいますが SESSION 情報が3台のサーバー間で 共有されてないのが原因でした。

  • 従来のしくみに戻す
  • NFSなどで SESSION 情報を共有する ** NFSで共有するとロックの関係かもの凄く重いらしい
  • 本番を一時的に1台構成にしてもらう

などの案が浮かびましたが どうしよう。。。

参考サイト