[リストへもどる]
一括表示

Date:2003/01/22(Wed) 20:10
Handle:高橋
URL :
Title:
Update Checkerについて
 なりきり系BBSがUpdate Checkerで更新されているのを見ると喜んで見に行くのですが,何も変化がなかったりということがあります。糠喜び寂しいです。書いた後,削除という形なのでしょうが,現在書き込まれている中で最新のものの日時表示にすることは・・・無理でしょうね。
 で,結論。みなさん削除は極力慎みません?
 でも,いざ書き込まれてから見ると正視に堪えないもんで削除ってよくやるんですよね,私自身。
 なんかいいアイデアないですか?>ALL

Date:2003/01/22(Wed) 20:58
Handle:8bit
URL :
Title:
仕組み&犯人解説
まず最初に報告しておきますと、今日の犯人は俺です(滅死
テストのためカキコして削除しました。
で、カキコした後に高橋さんが指摘する部分に気付いた(ていうか気付いてた)ので今後はテスト用BBSを別に設けて作業しますんで許してくださいm(_ _)m

さて、Update Checkerの仕組みを解説します。
BBS書き込みの最終更新時刻を取得する方法は2種類あります。
 (1) 最新書き込みの日付を取得
 (2) 書き込みのデータファイルそのものの更新日付を取得

問題になっている点は、Update Checkerが(2)の方法を使っているからです。
(2)の場合は、カキコして削除した場合でもファイル自体は更新されているので、今回ご指摘のような状況が生まれるわけです。

しかし(1)の方法には忌避する致命的な原因がありまして。
(1)を実行する場合は以下のような手順が生じるわけです。
 手順1.BBSデータファイルを開く
 手順2.もっとも最新の書き込みデータを取得
 手順3.書き込みの中から日付を取得

問題となるのは手順1です。
つまり9個のBBS等の日付をチェックしようとしたら、BBSデータを9個開かなければならないのです。これはサーバの負担になるとともにその後の手順2、3が絡む関係でプログラムの処理時間にも影響してきます。
しかもその中の一つは「あの」中華街BBSデータです(巨

で、結論として。
上記理由からプログラムの変更は検討から外れるので、高橋さんが提案した人の努力次第となります。

Date:2003/01/22(Wed) 21:04
Handle:8bit
URL :
Title:
思いつき追加
第3の方法も一応ありましたので報告まで。
(3) 最新カキコの日付を別ファイルで管理しておく

つまり日付だけが入った軽いファイルを用意しておいて、これの日付を参照するという方法ですね。
ただこれも弱点はあります。
一つ目は記事が削除されることを考慮して何世代か日付のバックアップが必要であるということ。
二つ目は現状のCGIに手を加えるのがつらい(泣 特殊処理をチェックかけてるCGI全てに盛り込まなきゃならないのはちょっと……

Date:2003/01/22(Wed) 22:01
Handle:高橋
URL :
Title:
感謝
 丁寧な解説ありがとうございます。
 いやはや無茶いってすいませんでした。
 でも無理はあっても技術的には可能なんですね。少し驚きました。
 BBSに足を運ぶ労を惜しむようじゃいけないですし,修正削除をやるようではまだまだってことで(昔はBBSに書き込んだのを削除するのだって一苦労だったんだし,あんまりシステムにたよりきってはいけないですしね)。