■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50

monazilla Part 3

707 :デフォルトの名無しさん :02/11/02 14:25
俺は../subject.txtのHEADを取って夏時間の誤差を調べてたな。
ずーっと昔だけど。

708 :デフォルトの名無しさん :02/11/05 00:31
User-Agent制限復活した?
今朝までは取れてたんだけど。

709 :デフォルトの名無しさん :02/11/05 14:53
2chブラウザを作る上で、「これは2chに迷惑がかかるからするな」
ってのを教えてもらえるとありがたいのですが。
(できれば代替手段も)

710 :デフォルトの名無しさん :02/11/05 16:29
>>709
いくらでも挙げられるが。
自分が何をしようとしているのかを
匿名で言ってご覧。

711 :デフォルトの名無しさん :02/11/05 17:25
>>709
1.負荷をかけること
2.転送量を増やすこと

具体的にどうすべきなのかは、過去ログやいろいろな参考スレ(転送量問題時や負荷問題時)をみればわかるはず
今(少し前まで?)はHDD要領問題が起きていたけど、これはクライアント側からできることは少ない

712 :デフォルトの名無しさん :02/11/05 18:25
ちなみに、これらの問題に対する代替手段は
・作るな。
ということになります。ご了承を。

713 :デフォルトの名無しさん :02/11/05 19:22
>>709
ブラウザが多すぎてユーザーが困ってます。
せめて作るんだったら、他とは違うブラウザを作ってね

714 :名無しさん@Emacs :02/11/05 20:48

>712
普通のブラウザで見たほうが2chにやさしいってこと?

715 :デフォルトの名無しさん :02/11/05 21:44
>>711
それをまとめてあれば他の人が過去ログ探すさがす苦労が省けると
思うのですが。。。(一応Monazilla.org(wにも情報はあるけど。)

というと怠慢だと思われるので勉強ついでにちょっと考えてみる。


まず、スレッドのリストを表示するにはsubject.txtをとってくる。
これはスレッドリストのリロード要求がある度にLast-Modifiedを見て
最新のをGETすればいい。
(HEADしてからGETするとリクエストが2回になるからNGですか?)

あと最終書き込み時刻を得るのには全datファイルにHEADするのは
負荷の面でNG。
dat/ディレクトリ一覧が見れるならそっちを使う。
かちゅ〜しゃでは既得スレだけ最終書き込み時刻が表示されるように
なってますね。

716 :デフォルトの名無しさん :02/11/05 21:57
スレの内容を得るのにread.cgiを介するのは負荷の面でNG。datを直取りする。
スレの更新がある度にdatを取り直すのは転送量の面でNG。差分で取ってくる。
これにはあぼーんされたレスがあったときの対処が問題となる。
http://members.jcom.home.ne.jp/monazilla/document/abone.html

717 :デフォルトの名無しさん :02/11/05 22:05
>dat/ディレクトリ一覧が見れるならそっちを使う。
これは疑問。stat()をファイル数分だけ繰り返すので、意外に負荷が高い可能性がある。
さらに、GET ..../dat/?M=Dなどとすると、ソートも必要になる。

その他、Range-GETは当然として、必ずIf-Modified-Sinceをつける。
同一サーバーに複数のリクエストを送るときは、HTTP/1.1 またはKeep-Aliveを使う。
パイプラインするとさらによい。
もちろん、cgiは呼ばない(offlaw.cgiは除く)。
dat落ちスレのチェックにはread.cgiではなく
過去ログ(.dat.gz)GETと/kako/o10xx/subject.txtを使用する。
などかな。

それと、
・スレ立て機能の是非
・巡回の有無
・自動取得/巡回の是非
・取得/巡回/更新チェックする間隔の自主規制の有無
なども考慮してな。

718 :デフォルトの名無しさん :02/11/05 22:14
あと、
・自動再試行は極力行わない
ってのもあったな。
例えばbbs.cgiへのPOSTが失敗した時等、ユーザーに確認させるようにしないと
ちょっとした誤操作で無限ループになる可能性があるから。

719 :デフォルトの名無しさん :02/11/05 22:35
夜勤によると、2ちゃんねるツールはIEの100倍鯖に優しいらしい。
つまり、普通に2ちゃんねるツールの99倍、鯖に負担を掛けても
IEよりは鯖に優しいのである。(゚∀)OK?

720 :デフォルトの名無しさん :02/11/05 22:36
普通に→普通の。デスタ

721 :デフォルトの名無しさん :02/11/05 23:20
>>719
しかし、何の根拠も示されていません

根拠がないので、ここからは私の推測ですが・・・
ツールを使う→●ユーザー以外制限アリ→制限がウザイ→●を買う→夜勤(゚Д゚)ウマー
→少しだけ鯖代にまわす→鯖に(・∀・)イイ!!
確かにIEよりも鯖に100倍優しいです

722 :デフォルトの名無しさん :02/11/06 05:56
>>717
stat()か。なるほど。/?M=Dなんてのは初めて知った。
最終更新時刻なんて全部見る人はいないだろうから
イッキに全部表示する必要はないのかも。

>721
read.cgiがやることを2chブラウザでは各PCがやってくれる
と考えれば負荷の面では優しいのかな。

723 :デフォルトの名無しさん :02/11/07 14:16
>>717
> これは疑問。stat()をファイル数分だけ繰り返すので、
> 意外に負荷が高い可能性がある。
それはそのとおりだがstat()の回数は全スレHEADした場合でも
同じだから全スレHEADよりはマシだな。
用もないのに最終書き込み時刻を取らないのが一番だが。

724 :デフォルトの名無しさん :02/11/07 14:29
>>723
つまり、用があるときだけ取りにいけばいいって結論か。

725 :デフォルトの名無しさん :02/11/07 16:36
普通に閲覧するだけなら、最終書き込み時刻は必要ないよね。
しかし、いまさら普通に閲覧する新たな2chブラウザはイラン・・・

726 :デフォルトの名無しさん :02/11/07 18:45
夜勤って以前、2chブラウザユーザーだけがかなりの鯖リソース食ってる
みたいな発言なかったっけ?
夜勤の考える事はよくわからん。

727 :デフォルトの名無しさん :02/11/07 22:01
負荷の全体量として2chブラウザ含むdat直読みが、じゃないか?
dat総ざらい業者の問題もあるし。
単純に一個人が同じスレをブックマークして定期的に読む
とだけ見ればどー考えてもIEより負荷は少ないはずだ。

728 :デフォルトの名無しさん :02/11/08 04:44
>>726
これだろ。リソース面でツールが100倍優しい根拠は怪しいな
金銭面で夜勤に100倍優しいの間違いだろ

851 名前: 夜勤 ◆D69Zsbfg 投稿日: 02/03/22 17:57 ID:???
>>893
今、手元に資料ないので、詳しい数値はわかりませんが、 先日 cheese サーバで Apache のログとったですよ。
ユニークな IP でのアクセス数とか、 UserAgent 別、IP別でのアクセス数とか、 しらべたんです。

それを解析してみたら、
呼び出し回数では、ツール使用者が 50% をとうに越しています。
ユニークな IP では ツール使用者は 18.6% です。
cheese の数値を元に全体を推定すると、 60万人/日 のツール使用者。で、これが全体の 18% 〜 20% くらいで あるのかな? ということです。
20% の人が 50% 以上のリソースを使っているのが、今日の2ちゃんねるです。


729 :デフォルトの名無しさん :02/11/08 05:07
ツールで1回読み込むのとIEなどで1回読み込むのが
同じ負荷でもないだろうし。
cheese鯖ってのがサンプル足りえるのかと言う疑問も有る。
都合のいいデータを都合よく解釈してるだけで参考にも何にも・・・

730 :デフォルトの名無しさん :02/11/08 10:03
素人さんの2ch読み書きの仕方を背後から観察すると納得できる話ではある

731 :デフォルトの名無しさん :02/11/10 22:23
>>729
ま、夜勤は素人だからな。

732 :デフォルトの名無しさん :02/11/15 00:46
C# 最強!

733 :助けを求める者です :02/11/16 23:08
「まいど3」によりスレッドが表示されません。
相談したらread.cgiを止められているのが原因だそうです。
回避手段がここ(www.monazilla.org/)にあると聞いたのですが
なかなか発見できません。ご存知の方がいらしたら教えてください。


734 :デフォルトの名無しさん :02/11/16 23:30
>>733
この板はソフトの作り方に関する板ですので、
使い方に関しては初心者板やソフトウェア板にどうぞ。
http://pc.2ch.net/pcqa/
http://pc3.2ch.net/software/

735 :デフォルトの名無しさん :02/11/17 13:05
まちBBSのdatが読めないのはどうしてだろう?
サーバはどこのを使ってるかな。

736 :デフォルトの名無しさん :02/11/18 12:47
まちBBSのdatが読めないのは仕様です。read.cgiで読んでください。
鯖会社はGVNです。

737 :名無しさん :02/11/20 05:45
datが読めないのは拡張子がcgiだから
http://www.machibbs.com/tawara/dat/

738 :デフォルトの名無しさん :02/11/20 12:57
JBBS@したらばのdatは拡張子cgiだけど読めてた時期があったよ
IP丸見えはさすがにまずいので修正されたが。
質問の本質は「なぜ拡張子をcgiにしたりdatが読めないように
細工してるのか」という点だと思うが。
もうまちBBSはIP強制表示だしdatを読めなくするメリットが
見当たらない

739 :デフォルトの名無しさん :02/11/20 13:16
そもそもdatが見える必要ってあるのかな
IEとかからは必要もないし、ツールのために見せるのは本末店頭だと思われ

740 :デフォルトの名無しさん :02/11/20 14:53
まちBBSの負荷がcgi叩かれるとどうにもならないくらい
増えてるんでなければどうでもいいとは言えるが

741 :デフォルトの名無しさん :02/11/20 15:07
どっちでもいいならdatを読めるようにしてくれると助かる・・

742 :デフォルトの名無しさん :02/11/20 20:29
リロード制限解除したJaneをばらまいてる香具師がいるな。

http://ex2.2ch.net/test/read.cgi/morningcoffee/1037541708/

743 :nanashi-browser-man :02/11/23 17:04
最近2ちゃんブラウザの開発を始めました。
VCで組んでいるのですが通信のプログラムとかサーバーへの負荷のこととか
よくわかってないんですが
subject.txtとかdatとかってCInternetSession使って以下のようなコードで
落としてきて問題ないんですよね?
-------------------------------------------------------------------------
char szBuff[1024];

CInternetSession session("My Session");
CStdioFile* pFile = session.OpenURL("http://money.2ch.net/xxx/dat/xxxxxxxxx.dat");
while( (pFile->Read(szBuff, 1024)) > 0 ){
CString str( szBuff );
}
pFile->Close();
-------------------------------------------------------------------------

744 :相野 葵§‘。‘ゞ§ ◆aoiaild7V. :02/11/26 20:36
http://members.tripod.co.jp/tatsu01
これめちゃめちゃ文字化けしてる
aoia@infoseek.jp

745 :デフォルトの名無しさん :02/11/26 21:03
VBのランタイムをcheck!!
てかスレ違い

746 :デフォルトの名無しさん :02/11/27 22:14
test

747 :デフォルトの名無しさん :02/11/27 22:16
test

748 :デフォルトの名無しさん :02/11/27 22:23
test

749 :デフォルトの名無しさん :02/11/27 22:29
test

750 :デフォルトの名無しさん :02/11/27 22:37
test

751 :test :02/11/27 22:50
test

752 :test :02/11/27 22:55
test

753 :デフォルトの名無しさん :02/11/27 22:56
なにやってんの?

test

754 :デフォルトの名無しさん :02/11/27 22:59
testですよ。

755 :デフォルトの名無しさん :02/11/27 23:07
だから、このスレでテストするなって。

756 :デフォルトの名無しさん :02/11/27 23:08
直りました。さようなら。

757 :デフォルトの名無しさん :02/12/06 12:03
●テストで、offlaw.cgiにアクセスすると、
「もう つかえません」と出るんですが、どうしてでしょうか?
http://kage.monazilla.org/system_DOLIB100.html のページを参考にしています。

758 :デフォルトの名無しさん :02/12/06 12:20
sessionIDはきちんとURLEncodeしませう

759 :デフォルトの名無しさん :02/12/06 12:44
>>758 ども。
「もう つかえません」は出なくなりましたが、
今度は「そんな板orスレッドないです。」と出ます。
どうしてだろう。。

760 :デフォルトの名無しさん :02/12/06 12:48
2chから帰ってくるエラーメッセージは嘘ばっかだからな。

761 :デフォルトの名無しさん :02/12/06 17:25
テストしたスレのURLを示してみたまえ。

762 :デフォルトの名無しさん :02/12/06 23:21
>>757
既存のブラウザと自分のやつでアクセスしてみて、
何が違うのかを見てみるとよろしいのではないのでしょうか?


763 :デフォルトの名無しさん :02/12/07 08:11
>>759
実際にないんじゃないのか。
絶対あると確信するならURL晒せ。

764 :757 :02/12/07 09:02
GET /test/offlaw.cgi?bbs=tech&key=1012544484&sid=セッションID HTTP/1.1
Host: pc3.2ch.net
User-Agent: Monazilla/1.00 (UA/0.1)
Connection: Close

こんな感じでGET送ってます。返事は「そんな板orスレッドないです。」
●書き込みはできたので、セッションIDは間違ってないと思う。
(セッションIDが間違っている時は「もう つかえません」と出る)
DTA落ち中のスレに送った時も同様です。
ちなみにブラウザでURLにアクセスした時も、「もう つかえません」と出ます。

765 :デフォルトの名無しさん :02/12/07 09:06
offlawは生いスレとか、htmlになったスレはとれない。

766 :757 :02/12/07 09:19
>>765
それが、
http://news2.2ch.net/test/read.cgi/newsplus/1039022352/
のようなHTML化待ちのスレッドでも、「そんな板orスレッドないです。」


767 :デフォルトの名無しさん :02/12/07 09:38
ついでに、Accept-Encoding:gzipも要る。

768 :757 :02/12/07 10:17
ども。おかげさまでちょっとずつ進んでます・・
実はgzipなしでも、「そんな板orスレッドないです。」 の下に、
dat落ちしたスレッドを発見しましたというメッセージがあったのを発見しました。
でも、今度はこの発見したスレッドの取得ができません。。
(gzipにしてもしてなくても)

769 :デフォルトの名無しさん :02/12/07 12:00
公開されてるソースを参考にしなさい。

770 :デフォルトの名無しさん :02/12/08 00:53
1スレのDATファイルのサイズって大体どれ位?

1〜1000までで200KBから400KBぐらいか
1MB超えることってあると思う?

771 :デフォルトの名無しさん :02/12/08 01:00
昔は10000レスのスレとかあったけど。

いまはスレ容量512kbでdat落ちしたはず。

772 :770 :02/12/08 01:06
>>771
そんな仕様があったのか。サンクス

773 :デフォルトの名無しさん :02/12/08 01:16
俺が持ってるネオむぎスレのdat(youth/957323893)は、
2721422バイト 15283レス
2001/03/15 21:35まで。止まるまでにもう少し伸びたと思う。

774 :デフォルトの名無しさん :02/12/12 02:16


775 :デフォルトの名無しさん :02/12/13 10:53
なるほど

776 :デフォルトの名無しさん :02/12/13 10:53
ほう

777 :デフォルトの名無しさん :02/12/13 10:53
と言う事で777ゲット

778 :デフォルトの名無しさん :02/12/13 10:55
無駄に長寿ですな。

779 :bloom :02/12/13 10:57

http://www.agemasukudasai.com/bloom/

780 :デフォルトの名無しさん :02/12/13 14:25
スレのGETの仕方なのだけど、以下のロジックに欠陥はない?

ローカル.datのmtimeは、リモート.datのmtimeに合わせておく。
で、ローカル.datのラスト10レス分を切り出しておく

GET /bbs/dat/key.dat HTTP/1.1
Host: xxx.2ch.net
User-Agent: Monazilla/1.0 (omaemona)
If-Modified-Since: (ローカル.datの時刻)
Range: bytes=(最新10レスの位置)-

if (status == 304) {何もしない(変更無し)}
else if (status == 200) {今回取得したもので、全部差し替え}
else if (status == 206)
{
 if (ローカル.datのラスト10が、今回取得したものの部分集合)
  ローカルのラスト10を、今回取得したものとさしかえ
 else
  あぼーんがあったとみなし、全部取得
}
if (取得した部分があったら)
{
 ローカル.datのmtimeを、リモートL-Mの時刻で変更
}

今、これでちょっとしたツールを動かしているのだけど、
Squidなどのキャッシュ串相手のときは、キャッシュをスルー
させるリクエストを入れないと、206を返してくれなくなる。

781 :デフォルトの名無しさん :02/12/13 14:41
うむ、proxy通す時はPragma:no-cacheは必要だな。
それと、今の2chのapacheは(互換板もだけど)416を返すから対処した方がいい。
もちろん404(302)の他、500等も対処してるよね?

あと、根本的に10レス前から取得する意味がわかんない。
1バイト前じゃだめなの?確かに確実ではないけど。

782 :デフォルトの名無しさん :02/12/14 15:59
>>780
ローカルのファイルシステムがFATだとmtimeを合わせられるとは限らない。

783 :デフォルトの名無しさん :02/12/15 13:47
いつの間にか「Set-Cookie: SPID=」が「Set-Cookie: PON=」に変わってるやんけ!
腹立つぞ。age

784 :780 :02/12/15 14:02
>>781
416は見落としてますた。当方で実験したときは、
206を返せないときは200だったので。

最新10レスを取得しに行くのは、一貫性チェックと
転送量抑制の落としどころを狙ったものです。
1レスだと、手が滑った連続投稿によるズレが識別
できないパターンが考えられて。
1バイトはさすがにどうかと思うんですが。

環境はPerl+LWP on Linuxどす。

>>782
ああそうだ、FATにはそんな仕様があったんだ…

鬱だ氏のう

785 :デフォルトの名無しさん :02/12/15 23:23
>784
既得DATの最後の1バイトは通常は改行文字。
DATは1レスにつき一行だから、改行文字はレスの最後にしか現れない。
だから、あぼーんがあった時に、
チェックした1バイトが改行文字になる確率はけっこう低いと思う。

786 :デフォルトの名無しさん :02/12/16 04:26
test

787 :デフォルトの名無しさん :02/12/16 10:13
シフトジスって改行コード(0x0aだっけ?)が
文字中に出ることはないんだっけ?

788 :デフォルトの名無しさん :02/12/16 16:42
多分大丈夫でし

789 :コロちゃん :02/12/17 06:52
すいません。朝から質問します。

2CHサーバーにPOSTするときの内容で、

「Cookie: NAME=aaaaa; MAIL=aaaaa; SPID=xvsk15.u; PON=99406cf5cc9c19a9e761d0ad11212f3a」

とありますが、このSPIDとPONは何を表しているのでしょうか?
ご存知の方がいましたら、教えてもらえますでしょうか?

お願いします。

790 :デフォルトの名無しさん :02/12/17 07:16
その意味を知っているのは、
ひろゆきと夜勤とマァヴくらいだとおもふ

791 :デフォルトの名無しさん :02/12/17 07:37
SPecialID

792 :デフォルトの名無しさん :02/12/17 11:36
まずはおさらい
(1) Cookieなしで書き込んだら、クッキー警告エラーにして
  Cookieを発行する。
(2) timeがサーバーの現在時刻より新しいか、15秒以内で
  あれば餅つけエラー

793 :デフォルトの名無しさん :02/12/17 11:42
予想される規制
書き込みに成功するたびに、IPと書き込んだ時点でのサーバ時刻の
組をサーバに記録。また同じ情報を暗号化してCookieに含め、
発行する。

(3) 次の書き込みでUAが渡してきたCookieに含まれる時刻が、
  サーバに記録されている時刻より古ければエラーにする
よって同じCookieを使い続けての連書きはできない。

(4) timeがCookieに含まれる時刻より古かったらエラーにする。
よって故意に古いtimeを設定しての連書きはできない。
通常は書き込んだ後で必ずリロードするか新着レスの表示を
行う(すなわち新しいtimeが与えられる)はずなのでこの規制に
かかることはない。

794 :デフォルトの名無しさん :02/12/17 11:44
この規制を導入する前提

すべてのツールは、
・Cookieを取得してそのままサーバに送り返さなくてはならない。
・timeを自分で生成せず、サーバから取得しなくてはならない。
さもなければ(1)〜(4)のどれかに引っかかって書けなくなる。
通常のブラウザはCookieを有効にしていればこの前提を満たす。

795 :デフォルトの名無しさん :02/12/17 18:07
つまり

書き込み時に送るtimeが、
クッキーの発行時間より新しくて
サーバーの現在時刻より古く、
さらに、同じクッキーを使って書き込む場合は
前回書き込み時間より15秒経ってる必要がある
ってことかな?


796 :デフォルトの名無しさん :02/12/17 20:44
> さらに、同じクッキーを使って書き込む場合は
> 前回書き込み時間より15秒経ってる必要がある
> ってことかな?
そうか、よく考えたら前回書き込み時刻はサーバに
あるんだから毎回Cookieを発行する必要はないな。
つーかtimeすら要らないような、、、
ちなみにこれが現時点で導入されてるわけではなくて
たぶんこうなるだろうって予想なので念のため

797 :デフォルトの名無しさん :02/12/17 21:11
で、そのアイデア出したボケはどこのドイツだ?

798 :デフォルトの名無しさん :02/12/17 23:34
他にもasctimeとかdifftimeとかstrftimeとかあったような

799 :デフォルトの名無しさん :02/12/17 23:38
すまん誤爆した

>>797
もちろんあの男に決まってる
http://qb.2ch.net/test/read.cgi/accuse/1040003579/453
453  マァヴ ◆jxAYUMI09s   Date:02/12/16 13:47 ID:s9/3ohLw
>>445
一応5人の人間がその場で検証したし(^_^;)
不安が残るとしたら、提唱者があの男ってことくらいかと・・・・
って、なんかすげー不安になってきたじゃないか(^_^;)

800 :ムー娘。 :02/12/18 06:43


2ちゃんねるサーバーに書き込みを転送する時、HTTPで送ればいいですよね?もちろん。
一応確認を取りたくて・・・。

もしや、FTPとか、だったりして・・。

801 :デフォルトの名無しさん :02/12/18 07:01
独自のプロトコルですが。

802 :デフォルトの名無しさん :02/12/18 08:43
HTTP/2chプロトコルでどうぞ。

803 :デフォルトの名無しさん :02/12/18 09:19
>>802
確かに、最近の動きを見ているとHTTPの上にもう一層プロトコルがある感じだなと。

804 :デフォルトの名無しさん :02/12/18 10:31
SOAP みたいなもんか。

805 :デフォルトの名無しさん :02/12/18 11:49
いっそのことwebサービス化してホスイ

806 :デフォルトの名無しさん :02/12/18 12:29
>>805
ますます重いぞ。


226KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30