※ ChatGPTを利用し、要約された質問です(原文:ファイルロックについて)
ファイルロックの精度とパフォーマンスについて
このQ&Aのポイント
Perlのファイルロックについて教えてください。ファイルロックを使用してファイルの同時アクセスを制御していますが、同時に多数のアクセスがあるとレスポンスが遅くなることがあります。
ファイルロックの精度に問題はありますか?また、ファイルロックによってパフォーマンスが悪くなる可能性はありますか?
論理ファイルを読み込んでデータを絞り込み、その結果をPOSTしています。ファイルロックがパフォーマンスに影響を与えることはありますか?
こんばんわ、お世話になります。
Perlのファイルロックについて教えて下さい。
色々書き方があるようなのですが、私は下記のように
単純に書いています。
#// ファイルロック開始
flock(LOCK, 2);
#// ファイルオープン
open(LOG, ">>$data") or exit;
#// ファイルへ書き出し
print LOG "$now,$ip,$ls\n";
#// ファイルクローズ
close(LOG);
#// ファイルロック解除
flock(LOCK, 8);
原因かわからないのですが、アクセスが多数同時にあると
10分くらいレスが返ってこなくなったりすることがあるようです。
ファイルロックに精度とかあったりすのでしょうか?
単純に、コードが1500行くらい書いているので、やっている処理自体
重いのかもしれませんが、1アクセスの場合は問題なく返ってくるので
どうなのかな…と思い、投稿しました。
論理ファイル(CSV)を呼んで、中のデータを絞り込んでいき
その結果をPOSTするいったこと(100ファイル分くらい)をやって
います。
ファイルロックによって、パフォーマンスが悪くなったりするのか、
どなたかご教授ください。お願いします。
お礼
taseki様、お礼を申し上げるのが大変遅くなり 申し訳ありませんでした。 サーバのスペックにも問題があるのと、ロジックでやっている 論理ファイルの処理が大分重かった為、論理ファイル自体を軽減 したのと、ご教授いただいたコードにて対応したら大分ストレスが 解消されました。 本当にありがとうございました。