サーバ上にPerlやPHPを置く場合、何よりも重視しなければ
ならないのはサーバへの「負荷」。
負荷の高いCGIの使用は削除対象となるのが目に見えてます。
負荷を軽減させるにはどうすればいいか?
どういう書き方をすればいいか?
そんな委員会を開設しました。
★負荷軽減対策委員会(Perl、PHP)★
1ジークハルト ◆VUxx/EwNXI
02/10/15 10:33ID:ifgLRUyb02/10/15 10:42ID:???
掲示板はYahooのジオボードでも使っているように.htmlファイルを作成するようにする
データベース系はGoogleのように検索されたものを必ずキャッシュして次回同じ語が検索された時に備える
データベース系はGoogleのように検索されたものを必ずキャッシュして次回同じ語が検索された時に備える
02/10/15 10:44ID:???
いちいち負荷を気にしてるようじゃァ、やらないこった!
02/10/15 10:52ID:???
負荷軽減と速度アップは相反することが多い。
アルゴリズムの工夫なら速度アップにつながる事が多い。
アルゴリズムの工夫なら速度アップにつながる事が多い。
02/10/15 11:01ID:???
負荷かかる順番としては
Ruby>>Java>>Perl>>PHP>>>>>>>>>C++
と考えていい?
Ruby>>Java>>Perl>>PHP>>>>>>>>>C++
と考えていい?
02/10/15 11:03ID:???
PHPでもXREAの凍結対象になる程かなり負荷かかるんですが
何かいい方法は?
何かいい方法は?
10nobodyさん
02/10/15 12:42ID:??? やっぱPerlで掛け算とかは負荷になるのかな?
内部でOPコードが処理してるのなら足し算も掛け算も一緒だろうけど。
内部でOPコードが処理してるのなら足し算も掛け算も一緒だろうけど。
15ジークハルト ◆VUxx/EwNXI
02/10/15 15:28ID:??? >>13
XREAの規約に
●PHPの動かし方がわからないのですが?
public_html内で動作させる場合は、CGIとしてのみご利用可能です。
shared_htmlで動作させる場合は、モジュール版PHP(SafeMode付き)で
実行できます。
ってあったから
shared_html内に入れれば負荷は軽減できるはず。
XREAの規約に
●PHPの動かし方がわからないのですが?
public_html内で動作させる場合は、CGIとしてのみご利用可能です。
shared_htmlで動作させる場合は、モジュール版PHP(SafeMode付き)で
実行できます。
ってあったから
shared_html内に入れれば負荷は軽減できるはず。
18AAAA
02/10/15 16:54ID:??? モジュール版ってCGIに比べてどれくらい負荷軽減出来るの?
3分の1くらいか?
3分の1くらいか?
19nobodyさん
02/10/15 17:22ID:???20nobodyさん
02/10/15 17:35ID:??? >>18
http://perl.apache.org/start/tips/registry.html
の下の方に、hello.cgiがmod_perlだと、243/7.3倍に
なるそうだ。hello.cgiのコードも書いてあるけど、まあ、相当な
もんだなや。
http://perl.apache.org/start/tips/registry.html
の下の方に、hello.cgiがmod_perlだと、243/7.3倍に
なるそうだ。hello.cgiのコードも書いてあるけど、まあ、相当な
もんだなや。
23nobodyさん
02/10/15 17:40ID:??? 負荷軽減の極意
(1)Perlを使うなPHPで書け
(2)PHPはApacheのモジュールを使え
(1)Perlを使うなPHPで書け
(2)PHPはApacheのモジュールを使え
25age
02/10/15 17:42ID:??? 負荷かかる順は
Ruby>>Perl>>PHP>>>>>>>>>>>>Java
か?
Ruby>>Perl>>PHP>>>>>>>>>>>>Java
か?
27_
02/10/15 19:18ID:???30nobodyさん
02/10/15 20:34ID:???34nobodyさん
02/10/15 23:22ID:??? レンタル掲示板するにしても、
2500個て・・・
1ユーザー、1スクリプトなんだぁw
2500個て・・・
1ユーザー、1スクリプトなんだぁw
36nobodyさん
02/10/15 23:39ID:??? >35=21
ある意味すげぇ
ある意味すげぇ
39nobodyさん
02/10/16 00:06ID:??? 無料鯖の時点でダメ。
40nobodyさん
02/10/16 00:07ID:??? >>21
その掲示板にバグが見つかったら、2500個すべて直すのか?
どうせ広告貼ってるんでしょ?
その広告がボツになったり、もっと良い広告があったら
2500個すべて張り直すのか?
申し込みがある度にアップするのもメンドイ
簡単な例をあげると
「魔法のあいらんど」
ttp://ip.tosp.co.jp/i.asp?i=ユーザー名
元は「i.asp」一個だけ
その掲示板にバグが見つかったら、2500個すべて直すのか?
どうせ広告貼ってるんでしょ?
その広告がボツになったり、もっと良い広告があったら
2500個すべて張り直すのか?
申し込みがある度にアップするのもメンドイ
簡単な例をあげると
「魔法のあいらんど」
ttp://ip.tosp.co.jp/i.asp?i=ユーザー名
元は「i.asp」一個だけ
4221
02/10/16 00:15ID:??? 複数設置用を1個用に改造するのって簡単かな・・・・?
43ジークハルト ◆VUxx/EwNXI
02/10/16 00:23ID:???44nobodyさん
02/10/16 00:27ID:??? 清々しいまでに阿呆だ。
まぁ取り合えず専鯖借りれ。話はそれからだ。
まぁ取り合えず専鯖借りれ。話はそれからだ。
46nobodyさん
02/10/16 00:34ID:b9+Rgnoa >>27
都道府県ということは47個だろ?なら5000個なんてとんでもない個数だな。。。
都道府県ということは47個だろ?なら5000個なんてとんでもない個数だな。。。
4821
02/10/16 00:38ID:UJRd9C8p >>47
うっさいハゲ氏ね
うっさいハゲ氏ね
49nobodyさん
02/10/16 00:41ID:??? とうとう21は自分が禿であることをカミングアウトした訳だが。
51nobodyさん
02/10/16 01:28ID:???−−−−−−−−−−このスレッドは終了しました−−−−−−−−
52nobodyさん
02/10/16 06:19ID:z+MacZfD つか、掲示板スクリプトにちょっと手直ししてやるだけで1つだけで複数の掲示板が使えるじゃん。
ファイル名、タイトル名などの情報をデータファイルに書き込んで、変数で取得したユーザーIDと一致すれば
それを適用すりゃいいんだし。
ファイル名、タイトル名などの情報をデータファイルに書き込んで、変数で取得したユーザーIDと一致すれば
それを適用すりゃいいんだし。
53nobodyさん
02/10/16 06:31ID:??? * 危険 *
厨に知識を与えないで下さい。
厨に知識を与えないで下さい。
551
02/10/16 08:36ID:??? あのー、
負荷軽減対策スレなんですけど(汗
負荷軽減対策スレなんですけど(汗
56nobodyさん
02/10/16 09:31ID:8AIPTE76 mod_gz使って転送するかどうか迷っています。
gz読めるブラウザって、どのくらいの割合なんでしょうか。
また、gzする負荷と疥癬の負荷を考えると。ううむ
ケースバイケースですね。
gz読めるブラウザって、どのくらいの割合なんでしょうか。
また、gzする負荷と疥癬の負荷を考えると。ううむ
ケースバイケースですね。
58nobodyさん
02/10/16 10:24ID:pcpH7Mcq59nobodyさん
02/10/16 10:28ID:??? シンプル、ツリー、iモード掲示板をチェックしてor検索ね。
60マリモーマ
02/10/16 10:32ID:jc3XYznE sub{
}
を 全部 別ファイルに 分けるのは どうかな?
}
を 全部 別ファイルに 分けるのは どうかな?
6221
02/10/16 11:03ID:??? 質問していいですか
仮に2500個の掲示板を設置するとして、
共用サーバでそれやったらアホだけど
専用サーバなら何の問題も無いかな?
ダウンしたりしないかな?
重くならない?
仮に2500個の掲示板を設置するとして、
共用サーバでそれやったらアホだけど
専用サーバなら何の問題も無いかな?
ダウンしたりしないかな?
重くならない?
65nobodyさん
02/10/16 11:51ID:??? 荒らしまがいの糞レスが散らばってますが、
負荷軽減ってそもそも誰かのために不利になることってあります?
その筋の荒らしではないかと小一時間。
負荷軽減ってそもそも誰かのために不利になることってあります?
その筋の荒らしではないかと小一時間。
66nobodyさん
02/10/16 11:53ID:???ソース書き直す必要がでてきたらめんどいってことかな。
67nobodyさん
02/10/16 12:06ID:8AIPTE76 >>62
あのお。なんのために「制御構造」とがあって、「くりかえし」ができるようになっているのか考えてことがありますか?
あのお。なんのために「制御構造」とがあって、「くりかえし」ができるようになっているのか考えてことがありますか?
68nobodyさん
02/10/16 12:08ID:8AIPTE7671nobodyさん
02/10/16 12:14ID:???実際に自前で鯖立ててやってみ。
そこまでできるようになったら知識もついて
もうちょっとましな方法が思いつくだろ。
72nobodyさん
02/10/16 12:23ID:CHU8gz5p >>70
幼女ならJAPU氏が優しく教えてくれるかもしれませんよ(藁
幼女ならJAPU氏が優しく教えてくれるかもしれませんよ(藁
75nobodyさん
02/10/16 13:02ID:??? 鹿児島の人間じゃないことだけは確かなようだ。
78nobodyさん
02/10/16 14:02ID:YPyufUJw79nobodyさん
02/10/16 14:22ID:???−−−−−−−−−−このスレッドは終了しました−−−−−−−−
80nobodyさん
02/10/16 14:23ID:??? 兎に角Yahooに倣え
和塩含めて、負荷軽減はかなり追求してるから
和塩含めて、負荷軽減はかなり追求してるから
81nobodyさん
02/10/16 15:40ID:??? 小学生で引き篭もりでつか。
82nobodyさん
02/10/16 15:52ID:??? apache軽量化するのが一番効果ある。
mod_perlより、普通のcgiのほうがトータルのスケーラビリティは
上という場合もある。
いらないモジュールは全て削る。
モジュールはスタティックにコンパイルする。
あと、httpd.confの書き方も重要。
perlで言えば、超軽量のhttpd+speedyCGI
これが最もサーバーに負荷をかけない。
mod_perlより、普通のcgiのほうがトータルのスケーラビリティは
上という場合もある。
いらないモジュールは全て削る。
モジュールはスタティックにコンパイルする。
あと、httpd.confの書き方も重要。
perlで言えば、超軽量のhttpd+speedyCGI
これが最もサーバーに負荷をかけない。
84nobodyさん
02/10/16 16:49ID:??? SpeedyCGIはお手軽だねぇ
85nobodyさん
02/10/16 18:00ID:8AIPTE76 phpでメソッド呼び出したときの内部変数って、メソッドが実行し終わったら
unset()されるのでしょうか。
たとえば、メソッド内でファイルを読み込んだ入りして、
場合によっては$hogeのサイズが100k超えたりするわけです。
それから、HTMLに書き出す内容をすべて変数に入れちゃって、あとでまとめて
echoする方法をとっていたりすると、結構その変数のサイズ大きくなりますよね。
ご教授お願いします。
unset()されるのでしょうか。
たとえば、メソッド内でファイルを読み込んだ入りして、
場合によっては$hogeのサイズが100k超えたりするわけです。
それから、HTMLに書き出す内容をすべて変数に入れちゃって、あとでまとめて
echoする方法をとっていたりすると、結構その変数のサイズ大きくなりますよね。
ご教授お願いします。
86nobodyさん
02/10/16 19:21ID:??? 大量のレコードを処理するときは、一行づつ読み込こめば、軽くなるよ
んで、出力するのだけ、メモリに入れればオッケーと思います
んで、出力するのだけ、メモリに入れればオッケーと思います
02/10/16 21:33ID:???
小学生またまた乱入。
要するに、いろいろな要因の絡み合いだから、場合によってってところだね。
0)使用言語の選択
1)プログラム(スクリプト)の設計
1-1) メモリ領域
1-2) CPU時間
3)アクセス数
4)サーバのキャパシティ
5)他には?
これをうまく図で表せればいいですね。僕はまだ習ってません。
要するに、いろいろな要因の絡み合いだから、場合によってってところだね。
0)使用言語の選択
1)プログラム(スクリプト)の設計
1-1) メモリ領域
1-2) CPU時間
3)アクセス数
4)サーバのキャパシティ
5)他には?
これをうまく図で表せればいいですね。僕はまだ習ってません。
02/10/16 21:35ID:???
89nobodyさん
02/10/16 22:25ID:??? まあアクセス増えた後自分の首絞めたいならどうでも良いよ。
90nobodyさん
02/10/16 22:33ID:vfA8qHJl このタイトル、ひかれますね。
私は今、チャットの負荷軽減を頑張っています。
使用しているのはKENT-WEBのYY-CHAT。
現在は分割処理で
ログ表示CGI
フォーム部分CGI
書き込みCGI
退室CGI
入室前CGI
に分割させ、いらない機能はすべて取り外しました。
さらにこれから
(1)そのスクリプトをC言語化
(2)新規発言のみを読み込むJavaプログラムを追加
させようと考えています。
私は今、チャットの負荷軽減を頑張っています。
使用しているのはKENT-WEBのYY-CHAT。
現在は分割処理で
ログ表示CGI
フォーム部分CGI
書き込みCGI
退室CGI
入室前CGI
に分割させ、いらない機能はすべて取り外しました。
さらにこれから
(1)そのスクリプトをC言語化
(2)新規発言のみを読み込むJavaプログラムを追加
させようと考えています。
91nobodyさん
02/10/16 22:43ID:QZ0dtDWe PHPですが、
$hoge = "<img src=\"$foobar\">\n";
と書くのと、
$hoge = "<img src=\"". $foobar ."\">\n";
と書く方法がありますが、
どちらがよいのでしょうか。
私は、エディタのハイライト機能で変数の色を変えていため、後者を使っています。
でもいっぱい変数を使う文字列だと、前者のほうが便利だね。
$hoge = "<img src=\"$foobar\">\n";
と書くのと、
$hoge = "<img src=\"". $foobar ."\">\n";
と書く方法がありますが、
どちらがよいのでしょうか。
私は、エディタのハイライト機能で変数の色を変えていため、後者を使っています。
でもいっぱい変数を使う文字列だと、前者のほうが便利だね。
93nobodyさん
02/10/16 23:21ID:YIcW4FL995nobodyさん
02/10/16 23:44ID:wbW/xBZm 書きやすいとか、なれている方でいいんでないの。
どっちが速いかなんて、体感じゃわからないでしょ。
ちなみに俺は
$hoge = '<img src="'.$foobar.'">';
こんな感じで書いてる。改行はつけないよ。
改行をつける場合は
$hoge = '<img src="'.$foobar.'">'."\n";
こんな感じ。他と分離させる。一目でわかりやすいから。
どっちが速いかなんて、体感じゃわからないでしょ。
ちなみに俺は
$hoge = '<img src="'.$foobar.'">';
こんな感じで書いてる。改行はつけないよ。
改行をつける場合は
$hoge = '<img src="'.$foobar.'">'."\n";
こんな感じ。他と分離させる。一目でわかりやすいから。
96nobodyさん
02/10/17 00:08ID:vMdIvLO898nobodyさん
02/10/17 00:21ID:UE/uqZMn >>96
漏れは掲示板のログファイルなんかは
1行づつ読み込んで、いるモノだけ配列に渡す。
インデックスのための小さなファイルなどは file()で一気に読み込む。
適宜使い分けている。
でも、上にもあるように、100KB位なら、一気に file() で読み込んでしまっても
いいのではないかと思ってしまう。
あとPHPで
while (!feof($fp)) {
$buffer = fgets($fp, 2048);
}
とかやってるんだけど、
fgetsせずに行をスキップするにはどうしたらいい?
漏れは掲示板のログファイルなんかは
1行づつ読み込んで、いるモノだけ配列に渡す。
インデックスのための小さなファイルなどは file()で一気に読み込む。
適宜使い分けている。
でも、上にもあるように、100KB位なら、一気に file() で読み込んでしまっても
いいのではないかと思ってしまう。
あとPHPで
while (!feof($fp)) {
$buffer = fgets($fp, 2048);
}
とかやってるんだけど、
fgetsせずに行をスキップするにはどうしたらいい?
99nobodyさん
02/10/17 01:31ID:vMdIvLO8 >>98
100KBで一気にですか、、、すごいですね。。。
負荷軽減対策委員会という意味ではなしかと。。。
>while (!feof($fp)) {
> $buffer = fgets($fp, 2048);
>}
>とかやってるんだけど、
>fgetsせずに行をスキップするにはどうしたらいい?
fgetcsvか、fseekしてfread。
100KBで一気にですか、、、すごいですね。。。
負荷軽減対策委員会という意味ではなしかと。。。
>while (!feof($fp)) {
> $buffer = fgets($fp, 2048);
>}
>とかやってるんだけど、
>fgetsせずに行をスキップするにはどうしたらいい?
fgetcsvか、fseekしてfread。
100nobodyさん
02/10/17 07:49ID:??? たまに、初期設定で設定される変数の内容だけで、数十KBにもなるものがあるが、その方が問題だったりして。
101ジークハルト ◆VUxx/EwNXI
02/10/17 09:04ID:???レスを投稿する
ニュース
- 【自維】鮭おにぎり198円に絶望、コンビニすら遠い存在に…「生き延びられない」物価高で広がる生活苦★5 [ひぃぃ★]
- 【サッカー】ブラジル戦、NHKは地上波なし 本田圭佑はBSで解説… 悲鳴続出「マジかよ」 地上波はフジテレビが生中継、解説は小野伸二 [冬月記者★]
- 【芸能】田中みな実、実名告白「めっちゃ格好いい」「インスタもフォローした」 W杯日本代表にメロメロも「狙ってないからね?」 [冬月記者★]
- 小学校で英語必修化→学力の格差拡大が深刻…英語嫌いだった夏目漱石に学ぶ、現代の「迷走する早期教育」への処方箋 [バイト歴50年★]
- 【サッカー】「世紀の談合マッチになる予感」J組の一戦が話題…ドローで両チーム決勝T進出の“異例事態” [ゴアマガラ★]
- 【サッカー】W杯の「日本VSブラジル」を他で例えると…Xで問いかけ話題「湘北vs山王」「明徳義塾vs大阪桐蔭」「ドトウvsオペラオー」★2 [o(^・-・^)o★]
- 【高市悲報】今国会の全法案が廃案へ。。。飲みィのヤリィのしてきた結果がこれなのか・・・ [252835186]
- 経団連「年内には訪中して習主席と面会したい😢レアアースもタングステンももう限界😢」 ★2 [904151406]
- 経団連「年内には訪中して習主席と面会したい😢レアアースもタングステンももう限界😢」 [931948549]
- 蒲焼さん太郎めっちゃ小さくなってない?
- ジジイになって柔らかいうどんの美味さに気づけた
- お台場、次々閉館してただの廃墟と化してしまう [709039863]