PHPでファイルが壊れる時に

とある仕事でデータをファイルに書いて保存する処理を組み込んだ。

ある時、「ファイルが壊れるんだけど」という連絡をいただき、いろいろ調べたのだが結局原因がわからずじまいだった。もちろんflockしてるし、ファイルバッファも0にしている。アクセス数が極端に多いわけでもないので、偶発的に壊れるのであればわかるけれど、時々壊れるというのだから原因がわからない。で、調べてみた。

どうやらマルチスレッド環境にflockが対応していないということに起因するかもしれない、ということがわかった。apacheの設定を調べてみなくてはいけない。preforkならOK、それ以外だとアウト、という感じでいいんだろうか。

どうしてもダメならSQLiteに変更するか。

コメントを残す


守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net