bby -- スレッド情報一元管理システム構築スレ
■ このスレッドは過去ログ倉庫に格納されています
2chにある全スレッドの情報を一元で管理するシステム(通称bby)について議論したり構築したり
雑談したりするスレッドです。
関連スレ
bbs.cgi再開発プロジェクト2
http://qb3.2ch.net/test/read.cgi/operate/1069144193/l50
【広告】新機能 Rock54【自動排除】 2
http://qb3.2ch.net/test/read.cgi/operate/1067770666/l50 >>1 乙
とりあえず、妄想でも書いてみます
1.スレ立て時鯖or板ごとに情報を記録
2.一定時間毎に各鯖に置いてあるpostman.cgi(仮)を起動
3.管理サーバー上のpostoffice.cgi(仮)が起動されログ受付
4.各板or鯖ごと?一括?で保存 日付ごとに分類?
必要性があれば、項目ごとの区切りテキストを使って、cgi経由で観覧
別に、呼び出し方向はどちらでもいいとは思います スレタイなども保存するのなら
thread.txt(仮)
スレkey<>板dir<>スレタイ<>建てた人<>時刻<>予備<>\n
で記録していって
gets.cgi(仮)で各鯖のthread.txt(仮)を(σ・∀・)σゲッツ!!
どうかな? あっちの>627
> スレタイ(や+系だと記者名)も別途収集できるといいのかな。
> 64バイト未満なら今のDNSのしくみで収集できるけど、スレタイはそうはいかんですからね。
>
> @400000003ff57db01dd3d764 d8dad9b3:ce6c:e590 + 0001 1073053093.male.human2.2ch.net.bby.2ch.net
> @400000003ff57dc11703039c 403eec22:3029:0d13 + 0001 1073053111.mnewsplus.news6.2ch.net.bby.2ch.net
> @400000003ff57dc4384aed44 41139b6a:74a6:f47d + 0001 1073053114.kitchen.tmp2.2ch.net.bby.2ch.net
> @400000003ff57dde154993cc d8da8232:9857:b2b8 + 0001 1073053142.ascii.okazu.bbspink.com.bby.2ch.net
ポイントは各板をクロールしなくても新スレ一覧リストを作れるって言うところだと思うわけで。
この情報を元にまずnewbornthreadstoday.txtみたいなのを
時間 http://human2.2ch.net/test/read.cgi/male/1073053093/
時間 http://news6.2ch.net/test/read.cgi/mnewsplus/1073053111/
時間 http://tmp2.2ch.net/test/read.cgi/kitchen/1073053114/
時間 http://okazu.bbspink.com/test/read.cgi/ascii/1073053142/
な感じで作って、スレタイや記者名も収集したければ、newbornthreads.txtを一定期間で読むクライアントの方で
http://news6.2ch.net/test/read.cgi/mnewsplus/1073053111/1をとってきて分析すればええんではないかと。 スレ立て時にタイトルとか一緒に送って記録するのって難しい? それほど難しいことじゃないと思うけどなぁ。
負荷のほどはわからないけど、 DNSの仕組みを使って情報を管理するのがBB*のミソだったような。 だらだら小出しになりますが、、、
ひとつの目的として
新スレがたったら通知するという機能を
多数の方が実装しているなぁと感じています。
なぜならば、 subject.txt を超高頻度でがんがん取得
しているのがログを見ているとわかります。
以前サーバ状況が逼迫している時は .htaccess で deny しました。
BBY が公式に稼動すれば他のサーバの負荷を上げることなく
かつ転送量も上げることなくその機能を実装している人も気兼ねなく
使えるようになるのではないかと考えています。 スレ立て規制というのがありますが
板ごとの規制のため
実際には板またぎサーバまたぎでスレ乱立されています。
この辺も BBY を導入して
形の見える出力が得られれば何か対策方法があるのではないかと
思っています。
/24 /29 とかでやれば今のISPによっての不公平感を
ちょっとはなくせるとかなんて、 ああ、なるほど、ヘッドラインてそういうことね。
よくある掲示板のヘッドラインみたいなのを考えて、全板の新スレが
つらつら並んでるのを想像しちゃってたよ。
板別の新スレがわかるならいいね。 >>9
ということはDNSに渡せるぐらいの文字を使った対応表でも作るしかありませんか… スレタイもDNSに渡すとなると、分割するしかないのかねえ。
DNS以外の方法で、スレタイをBBYに送る、BBYが取りに行く
とかの方がスマートかねえ。 >>15
一時IDを使って、別ファイルに詳細情報を記録すればいいんではないでしょうか
時刻+二桁ぐらいの 一元管理することで、どういうことが出来るようになるのだろう、、? まだ管理するかどうかのレベルじゃなくて新しく立ったスレのリスト作りをやりましょう
というレベルの話。
今まで、どの板でどのぐらいスレが立っているか、という情報は保持していなかったけど
まずはそういうデータを集めてながめてニヤニヤしようという。。 >どの板でどのぐらいスレが立っているか
subject.txtで出来るような、、、
リストを作ることで、新しくどういうことが出来るようになるのか
いまいちわからんのですね。
>>19
えーと
bbs.cgiに何かの仕掛けをしかけて、
各板で新スレが立ったら、自動的に一つのところに通知したいのです。
その仕掛けとは、DNS問い合わせ。
で、通知された記録から、最近立ったスレッドのリストが作れます。
と言うわけです。(合ってますよね?)
>>19
できますねー
それを 5sec 置き、全板で
数百人がやっていると思われ >>20
実装する機能はわかるのですが、
その機能が出来ることで、
なにを実現したいのかよくわからないのですね。
>>24
>>11-12
では満足できないってことですか? たとえば、すべての板で立ったスレの名前を記録できるなら、
今日の夜中にあったような、全部の板に同じ名前のスレを立てるような
ことをできなくすることが出来るかもしれない。 >新スレがたったら通知するという機能
各掲示板レベルではあるかもしれませんが、
全板レベルで知りたい人ってのが想像つかなかったり。
スレッドの乱立対策だったら、
内容の判定までしないといけないので、
リソースコストが高い気がするです。
何がどう便利になるのかわからないけど、
bbyのサーバが重くなることだけは確かな気がするです。
bbyのサーバが全てのスレッドを検知する仕様にしていると、
bbyサーバが重くなると2ch全体が重くなるわけで、
そういうサーバの仕事を増やすのであれば、
それなりのメリットがなければ、
デメリットのほうが大きくなってしまうと思うですね。
んで、スレッドタイトルの乱立や、
新スレッドの検知に関しては、2ch検索で既に実現できてる機能なので、
車輪の再発明をしても仕方ないと思うのです。
>>27 にあるような、乱立検知&ある程度の自動対応と、
各サーバや各板でどのくらいのペースでスレが立ってるかの把握、ってのが
落としどころかな。
そのぐらいなら、bby側は大して重くならんです(統計とるのは別マシンでやるし)。
そのへんがDNS技術のいいところかな。
把握のほうは、ぼちぼちやってみようかなとは思ってるんですが。
ということで、これからしばらく新年会等によりオフライン。 ううん、、まあ、subject.txtがすごい勢いで読まれてるのは、
たぶん立ったスレの情報と言うよりも、スレにどれだけレスがついてるか
(「今日おもち食った奴の数→(136)」 の(136)の部分)のほうを取得する方が
目的としては多い気がしますしねぇ。
「新スレが立つ」だけの情報なら、情報として意味は少ないかな。
んで、同じスレタイの乱立は、どうせひとつの板にひとつしかスレが立たないので、
削除依頼かdat落ちを待てばいい話であって、いちいちスレ立ての時に
水際でくい止めるメリットがあまりない、と。。
でも、一日に立つスレの数って言っても、単なる書き込みよりも量が少ないのは確かなので、
そんな極端に負荷が増大することはないと思いますけどね。。。 スレッドタイトルの NG ワードを検知して規制が出来るとか。
金銭的なメリットは少ないかもしれないけれども、スレッドの建ち具合を全鯖に渡って把握できるので、
今後の鯖構築に役立つとは思うけれども。。。
♪subject.txt を監視する方が大変かと思いますです。思いますです。 >各サーバや各板でどのくらいのペースでスレが立ってるかの把握
まぁそれはすbじぇct。txtでちょいちょーいと出来ますねぇ。 >>24
そういわれたら・・・
うーむ・・・
乱立検知にしても、どれほど効果あるのでしょうか・・・
そもそも、それをやるほどのメリットがあるかどうかもありますし。
となると、実験目的と言うことになってしまうのでは無いでしょうか?
これが、乱立等のデータ収集に有効か否かの実験とか。 bbyのサーバが重くならないんだったら、
いいじゃないですかねぇ、、
と意見を鞍替え。 ひろくんは空気を動かすのが上手だなぁと感心してみる なんだか、とりあえず、ちょっと考えていたので、
せっかくなので、考えていた物のサンプル作ってみました。
http://z33.xtr.jp/wiki2/pukiwiki.php?%5B%5Bbby%5D%5D >>43
そんな感じでいいんじゃないでしょうかー。 >>43
ほぅほぅ、、
bbs.cgi に入れてみようかな、
ちょっと説明書き換えてみました。
問題は長い文字は切っているので、長いものは送れないってところでしょうか。
その辺をちゃんとする場合はもっと工夫が必要ですね。
ところで、外部かのbby.2ch.netへの問い合わせはもちろん弾いてますよね? よくまとまってますね。>>43
1箇所。
>DNSで送れる文字
>アルファベット(A〜Z,a〜z),数値(0〜9),ハイフン(-)
じつは、そうではないのだ。都市伝説ではそういわれてるけどね。
DNSでは、8ビットデータはおろか、ピリオドそのものすらもラベルとして扱えます。
RFC 1035にも「ラベルは8ビット値を含んでよい」と明記されてるです。
たしかに、互換性のためにホスト名の文法を守るべき、ということにはなってますが、
DNSで取り扱える文字がアルファベット・数値・ハイフンだけというのは、正しくないです。
Although labels can contain any 8 bit values in octets that make up a
label, it is strongly recommended that labels follow the preferred
syntax described elsewhere in this memo, which is compatible with
existing host naming conventions.
もちろん、ホスト名にそんな文字を含んじゃだめ(これは別のRFCで定義)、ということで、
DNSに出す前に値をチェックしてエラーにしているプログラムが多くあることも、
また事実です。
例えば、壷もそうかな。 つまり、どういうことかというと、
DNS側には8ビット文字列をそのまま保持できるので、
(少なくともBIND 9やdjbdnsでは問題なし)
利用する側からは、エンコーディングしないでそのままDNSに投げてもかまわない、
ということです。
もちろん、DNSに投げる*前の段階*で、
\がエスケープされちゃったりとかするかもしれないので、
そういう処理は必要かも。このへんはシステムのライブラリ依存かな。 つまりIDNがアプリケーション側でエンコーディングする方式を
採用したのは互換性と情報の圧縮を考慮してのこと
draft段階では8ビット通せるんだからそのまま投げりゃいいだろ、
という案もあった 今スレタイもRock54でチェックしてるのかな?
うまくやればマルチスレ立て防止に使えそうだけど。 そのうち各スレにユニークなスレッドキーが与えられるようになって
サーバをまたがったスレ移動とかも問題なくできるようになったりするんだろうか? >>54
いまは、移動先に同じキーのスレがあると、
1インクリメントされる仕様だったと思いますが?
ユニークとかはあまり関係ないのでは無いでしょうか? ひさびさにプログラム書いて見るかな。
(ボケ防止ではありませんよ)
bby.2ch.net にログインする情報希望 > root★さん subject.cgiを毎回GETしに行くのにいい代替案ないでしょうか
select文だけ使えるDBが公開されたらいいな 極度のふつかよい中。。。
>>60
もらいましたー はいれたー
どもでした > root ★さん
ページはここに作っていいのかな?
http://bbq.2ch.net/bby/ ほにゃらら/bby2ch/log/main はFTPでログインしても
見えないんですか? >>67
セキュリティ上の理由です。($HOMEから下しか見えないようにしてある)
別途対応します。 >current というのがが現在のログで
ということですが、一日分? or 複数日分?
>>69
>>70 のとおりですね。
multilogが管理しているので、容量でローテーションされます。 たぶん、bbxの処理みたいに、標準入力を食って、
パイプで動くプログラムを作るのがよいと思いますです。 ほうほう
それは標準入力を食べるプログラム書いて、
root★さんにありかを伝えると
どんどん(bbyがコールされるたびに)そのプログラムが
呼び出されると思っていいんですか? はい、そうです。
で、標準入力から食べさせるときは、最初の @なんちゃら がないものとして作ってください。
つまり、
@40000000401139232260e934 d8dad9b3:a33c:f7e3 + 0001 1074870552.morningcoffee.ex2.2ch.net.bby.2ch.net
@40000000401139242e226acc d8dad9b3:a50e:3696 + 0001 1074870553.news.news4.2ch.net.bby.2ch.net
@400000004011392a0cab186c d8da8232:b00b:0b29 + 0001 1074870560.motenai.love.2ch.net.bby.2ch.net
@400000004011394535a39334 d8da8232:b00b:185a + 0001 1074870588.motenai.love.2ch.net.bby.2ch.net
@400000004011394913ee45a4 d8dad9b3:405d:e619 + 0001 1074870590.exam.school2.2ch.net.bby.2ch.net
@400000004011394e06a74134 d8dad9b3:87d0:2e0b + 0001 1074870594.offevent.off.2ch.net.bby.2ch.net
ではなくて、
d8dad9b3:a33c:f7e3 + 0001 1074870552.morningcoffee.ex2.2ch.net.bby.2ch.net
d8dad9b3:a50e:3696 + 0001 1074870553.news.news4.2ch.net.bby.2ch.net
d8da8232:b00b:0b29 + 0001 1074870560.motenai.love.2ch.net.bby.2ch.net
d8da8232:b00b:185a + 0001 1074870588.motenai.love.2ch.net.bby.2ch.net
d8dad9b3:405d:e619 + 0001 1074870590.exam.school2.2ch.net.bby.2ch.net
d8dad9b3:87d0:2e0b + 0001 1074870594.offevent.off.2ch.net.bby.2ch.net
という形になるということです。
開発・デバッグは、いったんcurrentファイルをcp・加工して、
それを標準入力からくべればOKでしょう。
できたー
ありかをメールしまーす。 > root ★さん 仕込みました。>>76
詳細は、メールしますです。 なるほど、全板から最新10スレと、
news系サーバから最新10スレというわけですね?
ところで
>2004/01/30 最新10レス表示作った。erimo all と news 最新10個ネ
は最新10スレのことですよね、、、? おおっ。
タイトルは、どうしましょ。
個人的には、TXTレコードとか使いたい気分。 DNSの機能(というか、登録可能なレコード)のひとつです。
実例を見せたほうがよさそうなので、
$ nslookup -type=txt txttest.uma.2ch.net
と、どっかのサーバでやってみてください。
(上記はあえて、SJISで入れていたり)
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
txttest.uma.2ch.net text = "TXT???R[?h?I?e?X?g"
って言われた。 およ、そいつぁ、nslookup 側で8ビット通らない?あるいはそのマシンのライブラリの問題?
あるいは、画面側の問題かな。
www.2ch.netでも大丈夫だったんで、あらかた大丈夫だと思ったんだけど。
(umaサーバ)
%nslookup -type=txt txttest.uma.2ch.net
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
txttest.uma.2ch.net text = "TXTレコードのテスト"
(www.2ch.net (非oyster))
$ nslookup -type=txt txttest.uma.2ch.net
Server: monitor.he.net
Address: 216.218.130.50
Non-authoritative answer:
txttest.uma.2ch.net text = "TXTレコードのテスト" bbq.2ch.net でやりましたー
Putty さんが日本語理解不可能なのかしら。。。 ■ このスレッドは過去ログ倉庫に格納されています