ヨスコを快適ご利用いただくために

はじめに

ダメロダの代表格、ヨスコアップローダーをご利用いただきありがとうございます。このページは、Zipで固める方法やアップローダーの 使い方を説明するページではありません。見出しにあるとおり、ヨスコを快適に利用していただくためにご用意したページです。 例えばサーバーの通信が途切れるタイミングや利用者自身の通信環境を改善する方法などがメインになります。ぜひ参考にして快適に ご利用いただければと思います。

目次

ヨスコのポリシー
通信が途切れるタイミング
アップロードする時の注意点
同時接続数
混雑状況の目安 MRTGの見方
通信速度向上の裏技 RWin設定
 ◇
 ◇
 ◇
 ◇

◆ヨスコのポリシー

色々あるので箇条書きで説明していきたいと思います。

◇ヨスコアップローダーは帯域制限を掛けていません。

Webサーバーで通信帯域を制限するという措置は、限りのある帯域を、接続してきた皆さんで均等に分け合いましょうと言う発想で 行われるのが普通です。けっして締め出そうとかの目的で帯域を絞る訳ではありません。ではどの様なコンテンツで帯域制限が有効 かというと、代表的なのが動画配信ですね。動画配信サイトにアクセスして早速動画を見ようとすると、500kとか1Mとか高画質・低画質 が選べたりするサイトがあります。あれが俗に言う帯域制限です。そのサイトの場合、大雑把に言うとFTTH(光回線)用とADSL用の二つのサーバー を用意していて、それぞれの帯域に制限している訳です。

ではアップローダーはどうなのよ、と言われると、ヨスコでは色々試した結果、アップローダーに帯域制限は意味が無いと結論付けました。 理由は単純で、回線速度の高低で利用者を振り分ける事ができないからです。制限しちゃうと、本来物凄く早い優良回線の 利用者でも、その制限に従わなきゃいけない訳です。アップローダーの場合、負荷を減らそうという発想で制限する場合もあると思います が、かえって逆効果です。本来早い回線の人でも、長時間接続する羽目になるので次の人に順番がなかなか回ってこない。 ならば、早い人にはサクッと落として貰って次の人に回線を空けてもらおうというのがヨスコの考えです。この方針も良し悪しで、 混雑時間帯になると、低速回線の人はかなり厳しいのはヨスコも理解しています。が、逆に空いた時間帯ではある程度速度が出て いるはずです。以上の事を理解してもらえれば、時間帯を選ぶなりしてもらってある程度快適に落とせるのではないかと考えています。

◆通信が途切れるタイミング

Webサーバーには定期・不定期で通信の途切れる瞬間があります。ページを閲覧しているだけなら気にする事もないんですが、 アップロード中やダウンロード中だったりすると影響をモロに受けますので、覚えておいて損はないと思います。

▽不定期
 DNS更新(平均一日一回、日に三回変わる事も稀にある) ←8/8 固定IPに変更しました
 スレッド再起動(平均12時間に一回、メモリーリークが発生した場合はその都度)
 実験目的での停止(ヨスコの気まぐれで突然鯖を弄り出す状態の事)
▽定期
 サーバー機本体の保守・再起動(毎月第一週の土曜日朝8:00くらい)
 アクセスログのローテーション・アップロードログの保存(毎日午前4:03) ←2〜3秒Apacheが落ちます

定期の作業は、アクセスログの保存・システム関係の定期バックアップ・電子機器の大敵、埃除去などがありますので、だいたい小一時間 くらい停止します。

◆アップロードする時の注意点

ファイルをアップロードする、特にヨスコではサイズが大きくなりますので完了するまでに時間がかかります。当然個人差はありまして、 同じ500MBでFTTHでも3時間かかる人と20分以内に完了する人が存在します。所詮FTPと違って元々転送に時間のかかる方法なので 仕方ないと言えば仕方ないんですが、失敗するとそれはそれでムカッとしますね。失敗の原因は色々ありますが、↑の通信が途切れる タイミングに遭遇する事は稀です。ではなにが原因かと言うと、鯖のエラーログを見ると圧倒的に利用者側が送信を中断する事が多い訳 です。

アップロードは大雑把に以下の段階を踏んで行われます。

@アップロードしたいファイルを選択してDLパスワードを設定し「お約束に同意してupload」を押すと送信(サーバー側は受信)を開始します。

A最初にファイルサイズが制限値以内か、DLパスワードが設定されているか、不正な拡張子ではないか検査します。

B↑がOKだった場合は送信ファイルをサーバーのメモリーに読み込みます。NGの場合はエラーメッセージを表示します。

C送信ファイルのメモリー読み込みが完了すると、メモリーからハードディスクに書き出しを行います。(この時点で送信者の画面には「画面が変わるまでそのままでお待ちください!」 と白い画面で表示されますが、クリックしちゃダメです)

D書き出しが完了すると「log.cgi」にファイル名やファイルサイズ、時間などの情報を書き出して、最後にファイル一覧のHTMLを更新してアップロード が全て完了します。

どこの段階で最も失敗が多いかと言うと、Bです。特にIEのような不正確なプログレスバーを信用すると、実際はまだ読み込みの途中 なのに「ページを表示しました」となる場合が多いです。そこで勘違いして更新しちゃうとアップロードは中断されます。要は処理中 に更新やブラウザのタブを終了させると中断してしまう訳です。

対策としては、最後のDになるまで何があっても我慢強く待つ以外ないんですが、ひとつのブラウザでアップロードとWeb閲覧を 同時に行っている場合は操作ミスで中断なんて事もありえます。そこで、ブラウザを二種類用意してアップロード用とWeb閲覧用に 分けて使用するのが効果的だと思います。ブラウザのエンジンを二種類にするとなお効果的です。色々試してみましょう。

◆同時接続数

「同時接続数」ですが、99%の利用者の方々には無関係なお話です。なぜなら99%の皆様は、普通のブラウザから普通にアクセス して、ヨスコの遅い転送速度でも我慢して利用してくれている方々だからです。「ダウンロード支援ツール = 悪」とは露ほども思って いませんが、使う人によっては99%の方々が大迷惑を被るのもまた事実です。要は使い方次第・使う人の心掛け次第です。 ↓は、ダウンロード支援ツールを利用する人向けの内容です。心当たりのある方のみお読みください。

----------------------------------------------------------------------------------

他のロダでもそうだと思いますが、ヨスコでも1IP(お客様一名様)が同時に接続できる数(コネクション)を制限しています。 ヨスコの場合、トップページに一度接続するごとに最高で5コネクション程度を消費します。ですので一名様が同時に接続できる数は 5+αと考えてください。同時接続数5+αを超えるとエラーが返されます。

行儀の悪い巡回ロボットやツールを使う方が帯域を食い潰さないための措置です。ダウンロードツールなどで大量の同時接続を要求して、 ヨスコの設定した閾値(同時接続数5+αの倍の倍くらい)を3回超えた場合は「自動的にアクセス禁止になります」。アクセス禁止解除は永遠にしません。

低速回線の方などはツールを使った方が早い場合があるので、ダウンロードツールの利用は禁止にはしていません。が、一人の身勝手で 帯域を独占しようとする行為は断じて許しません。常識の範囲内で有効に利用してください。

◆混雑状況の目安 MRTGの見方

アップローダーを利用する時にまず気になる事は、そのロダの混み具合だと思います。斧さんの様におおまかな目安を表示して くれるところは稀な方で、その他ほとんどのロダは、実際にアクセスしてレスポンスの良し悪しで判断する場合が多いと思います。 ヨスコも「その他ほとんどのロダ」の仲間なんですが、OS変更を機会に、おおまかな混雑状況の目安になる「MRTG」を設置してみま した。

測定項目は「回線状況」「CPU使用率」「空きメモリ量」「httpd起動数」の四項目です。順に簡単に見方を説明しましょう。

▽「回線状況」

このグラフはサーバー本体のNIC「eth0」つまり、通信の出入り口の転送速度を測定した数値です。見た目75Mb付近で安定して ますが、実際にはほぼ100Mbで転送しています。表示をbitsに変えるとなぜか実際よりも少なく表示されます。ここには 表示していませんが、ルーターの転送速度も同じ様に測定しています。こちらも常に100Mb付近で安定しています。回線状況は、 接続人数が多かろうが少なかろうがほとんど変わりませんので混雑の目安にはならないと思います。

▽「CPU使用率」

このグラフは2つのHyper-Threading TechnologyのCPU、つまり見た目上四つのCPU使用率の合計を表示しています。これも測定値が 大袈裟で、実際にはいくら混雑していてもほぼ90%はアイドリング状態です。アップローダーでもっともCPUのパワーを使うのがファイルを アップロードする時です。5分おきの更新画面を見て、CPU使用率が普段より少し高くなっている場合は、「誰かがアップロードをして るんだな」との認識で良いでしょう。これも混雑の目安にはなりにくいですね。

▽「空きメモリ量」

このグラフもCPUと同じで、誰かがアップロードをしている時以外はほぼ横這いの数値です。ヨスコ鯖の最大同時接続数付近でも、 平均120MB程度の使用量で安定しています。もし仮に緑のグラフが天井付近にあった場合は、それはメモリーリークの真っ最中という 事です。これも混雑の目安にはなりにくいです。

▽「httpd起動数」

最後にやっと目安になりそうな項目がきました。この項目の意味を理解するには、ほんの少しだけApacheの知識が必要です。 まず、ヨスコ鯖はmpm(マルチプロセッシングモジュール)をworkerに設定して稼動しています。workerとは、複数のプロセスの中に生成されたスレッド で皆様のリクエストを受け付けるモジュールで、従来のpreforkよりも動作が速いのが特徴です。

ではどの様にグラフを読むかの前に下のworker設定ディレクティブをご覧ください。

# worker MPM
<IfModule worker.c>
ServerLimit 28
StartServers 2
MaxClients 700
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 30000
</IfModule>

これは実際にヨスコ鯖で採用している設定値です。↑の説明順に項目を解説すると、「複数のプロセス」にあたる項目が「ServerLimit 28」 になります。これは、プロセスを最大28個まで生成します、と言う意味です。

次に、複数のプロセス「の中に生成されたスレッド」は「ThreadsPerChild 25」にあたります。この意味は、25個のスレッドを 1個のプロセス内に生成します、と言う意味です。

では計算してみましょう。「複数のプロセス」である「ServerLimit 28」×複数のプロセス「の中に生成されたスレッド」である「ThreadsPerChild 25」 = 700 になります。おや?なんか同じ数値がありますね。

「MaxClients 700」とは、ヨスコ鯖の最大同時接続数です。

以上を踏まえて「httpd起動数」のグラフを読んでいきましょう。表の「最新」に「16 process」とある場合、16個のプロセス が起動しています。1個のプロセスには25個の「生成されたスレッド」がありますので、16×25 = 400 となります。つまり現在 おおまかに「400人がヨスコ鯖に接続している状態」と読む事ができる訳です。

ところが実際には全てが皆様に使われている訳ではなくて、3分の1は使われていない状態です。ですので400の3分の1 = 267接続くらいと思って間違いないでしょう。

ヨスコ鯖で「16 process」は概ね平均と言える数値です。win鯖の時もほぼ同じ数値でした。これが「20 process」を超えて くると混雑状態と言えます。

以上、非常に適当で簡単な説明ですが、混雑時間帯を「MRTG」を見る事で回避できる「様な気がする」ので説明して みました。皆様の役に立てば幸いです。

▼補足 Apacheチューニングの豆知識

workerでApacheを動かす場合、workerディレクティブの設定には一定のルールがあります。それは「設定値は整数でなければならない」 です。↑の"「httpd起動数」のグラフを読んでいきましょう。"の部分で例にした「16×25 = 400」を見るとわかりやすいと 思います。「MaxClients 400」÷「ThreadsPerChild 25」=「ServerLimit 16」見事に整数です。つまりMaxClientsの値を大きくして 同時接続数を増やしたい場合は、必ず「割り切れる整数」にしなければいけない訳です。仮に整数の法則を無視して適当なMaxClientsを 設定した場合、Apacheを起動後、エラーログに「設定値が不正なのでApacheで強制的に低い数値に修正します」と怒られます。↓

WARNING: MaxClients (1024) is not an integer multiple of ThreadsPerChild (25), lowering MaxClients to 1000 for a maximum of 40 child processes,

「MaxClients」÷「ThreadsPerChild 」=「ServerLimit」は必ず「割り切れる整数」に設定すると覚えておきましょう。

◆通信速度向上の裏技 RWin設定

たとえばADSL回線から光回線に変更した時、期待しつつ回線スピードを測ったのに、思ったほど速度が出ていなくてガッカリした 経験のある人は多いと思います。最高で100Mの速度と宣伝しているのに実際には30M程度であればガッカリもしますね。回線速度 の良し悪しは、PCのスペックでも大幅に変わるんですが、最大の要因は「OS」にあります。

ヨスコにアクセスしている80%以上の人がWindows XPのユーザーです。ご存知のとおり、Windows XPは米国製のOSで、米国の国内事情 を反映して設計されています。米国内の通信事情は、一部の大都市を除いて、いまだにADSLが主体です。必然的にWindows XP もADSLに合わせて設計されています。日本語版は日本の通信事情に合わせているか?(光回線の急速な普及)と言うと、まったく 考慮されていません。詳しい説明はブロードバンド スピードテストの一番下 にある「速度向上のポイント」をご覧ください。

日本の事情に合っていないWindows XPですが、ブロードバンド スピードテスト を読んだとおり、Rwinを設定し直す事で回線を有効に使う事ができます。

ただし、速度をRwinの設定で向上する事はできますが、設定はWindowsの根幹「Registry」の値を変更するため、最悪の場合 OSが起動しなくなる場合もあります。変更する場合は、バックアップを確実に取ってから「自己責任」で変更してください。 その様な事情で、ここでの詳しい説明はしません。光ファイバーネットをよく読んで 、自身の環境に合った設定をしましょう。

ヨスコ鯖はLinux OSですが、Windowsと同じ様にRwinがあって、かなり細かな設定が可能です。ですが実際にはデフォルトの設定値 でもブロードバンドに最適な数値で、しかも通信相手のRwinに合わせて最適になる様に自動調整されます。ですので通常Linuxで サーバーを構築する場合、Rwinの事はあまり気にしなくとも良い訳なんですが、常にパケットを吐き続けるアップローダーですので、微妙 に調整しています。

↑の様な事から、ヨスコの利用だけに限らず、アップローダーを利用する時はRwinをキッチリと設定した方が快適な訳です。

書いてるよー

uploader menu

Music menu

無料 アクセス解析キャッシング