某嬢のサイトによると、本日(昨夜?)うちの「最新更新情報(最近更新したもの)」が変なことになっていたようで。
実は、エラーがたまに起こっていることは把握しているんですが、どういうエラーなのか判っていないのです。
自分で見つけたエラーは、「無いページ名のページが表示されている」だったんですけど(正しくは、URLがページ名になっていた。URLは更新時間になっていた)、どうやら某嬢が見かけた物は、普通なら更新時間順に並んでいる項目の並びがめちゃくちゃだったようで…。
…とりあえず、ほんのちょっとは対策を講じてみましたが、さて。
これの仕組み、約1時間に1度(最後にデータを更新した時間・○時△分の「○時」が変わった時点で1度)、指定されたディレクトリをぐるぐると周回してデータを拾い、新しい物から順繰りに並べて表示する、というものなんですけど、データ取得時にエラーがあると、変なデータになってしまうようで…。
今まで密かに何度か改修をかけているんですけど、頻度は減りつつもエラーが出るわけで。
多分ね。
データ取得している最中に、何らかの理由で新たにデータ取得要求が入ると、変なデータが登録されちゃってエラーが出るんだろうとは思っているんですけどね、再現出来ないんですね。困ったモンだ。
(某嬢が見たエラーは多分、データのソートをかけている最中に要求が入って変なことになったかな、と。)
とりあえず穴は埋めたつもりなんですけどねぇ。
一つの要求が実行されている時に、別の要求を実行しない、そういう仕組みを入れているはずが、上手く作用していなくて困っております。うーん。
ちなみに、見る側の対策としては。
「1時間後(○時△分の「○時」が変わった後)にびくでん自体をリロードする」というのが一番確実なんですが、そんなめんどくさいことは出来ないもんねぇ。
9:05にエラーが出てたら、10時過ぎまで待てってことですもんね。
リロードボタンでも付けるかねぇ…。
でも、リロードしても、新しいデータの取得には実は30秒以上かかっているし、何度もリロードするとエラーが出やすくなるし。
(何よりも、サーバに負荷がかかりすぎるわけですよ。そこはそれデータが160MBはあるんで。1時間に1度程度が限界。)
…何か考えます…。
っていうか、何にしろ、いずれ考えねばならんことなんですけどね。