「サーバー運用」カテゴリーアーカイブ

VPSで運用している弱小ブログ( https://blog.daisukeyamashita.com/ )がTwitter & はてブ砲を食らった!そして勝った!(と思う)

このグラフの伸び方見たら笑うしかないw 普段は1日に150-450アクセスしかありません。

昨日(約4,500)、今日(約9,000)と集中砲火食らってます。このブログはさくらのVPSを使っているのですが、数カ月前にチューニングしていたので余裕で耐え切ったようです。access_logをざっと目視した感じではちゃんと200を返しているように見えました。正確なデータ調査は今夜ビール飲みながらしたいと思います。データ調査の様子は21時ぐらいからネットで放送しようと思うので、興味がある人はコミュニティにご参加下さい

過去24時間のリソース情報

過去一週間のリソース情報

トラフィックの急増に対して、DISK I/OとCPU負荷がバーストすることなく、ちゃんと抑えこまれてます。後は、全体のレイテンシがどの程度になっていたか気になるなぁ。

後日、設定を公開します。ちなみにnginxではなく、Apache + WordPressです。

ウェブ管理者のありえない話。。。

logo

 弊社の無料で利用できるWeb会議システム「SOBA CITY」ですが、4月2日にWindows Vista ガジェット / Yahoo!ウィジェット / iGoogle ガジェット / Google デスクトップガジェットを一斉にリリースしました。

 このガジェットにより、そこそこの新規会員を獲得できたのですが、日増しに「会議室(セッション)の一覧を取得するウェブAPI」のトラフィックが増え、本体のウェブサイトにも影響が出るようになってしまいました。

 昨日のメンテナンスでコア部分を高速化したものに置き換えたのですが、どうやら一部のページが正しく表示されていないといようだという事が分かり、朝から調査していたのですが、一部のjspファイルがwarファイルから正しく展開されず0byteになっている事が判明しました。

 とりあえず、全体が怪しいからもう一度デプロイをし直してみるものの展開作業が始まらない。。。今度は、全体が0byteという緊急事態になったので、JBossのデプロイヤーが停止していると判断し、不要ファイルを削除してJBossサービスのリブートをS君に指示。

 ブートログを流していると、Exceptionが発生!
続きを読む ウェブ管理者のありえない話。。。

マルチキャストとプロトコル解析

 最近、弊社の製品もマルチキャスト対応をしました。

 マルチキャストとは、複数個所へのデータ配信量を劇的に削減する技術の事で、例えば「ニューヨークとシリコンバレー」に同じデータを送信したい場合、宛先情報を2つ貼り付けたデータを1つアメリカ方面に投げます。同じ経路で送れる間は、そのまま送信し分岐が必要な場所(おそらく、西海岸付近のルータ)でデータを複製し、一方に「ニューヨークの宛先」もう一方に「シリンコンバレーの宛先」を付け、データを分岐させます。こうする事で、太平洋上を流れるデータ量がほぼ半分になります。

 この技術により、ADSLのような上り(送信)速度の遅い回線でも快適にウェブ会議をする事が可能になりました。

 ところが、中継システムに不具合があるようで、半日も使うとCPUが100%に張り付く症状が発生し、プロファイラにかけてみると一部のスレッドが暴走していることが判明しました。暴走の理由はソケットからのReadが永遠にトライアゲインエラーを吐き続けるというものでした。

 暫定対処はしたので、とりあえず安定して動作しているのですが、根本的な対策をする必要があり、負荷プログラムの作成が急務だったのですが、中継システムは改良に次ぐ改良で、正確なプロトコルドキュメントが存在していません。しかもどのドキュメントも使い物になりません。さすがに、30万行のソースコード(実行ラインで15万行)を読む元気もない訳で。。。

 しかも、エンドツーエンドで暗号化しているので、途中でパケットを拾ってもさっぱり分からないというのは結構困りました。結局、中継サーバからバイナリデータを抜き出し、バイナリエディタと関数電卓とを交互ににらめっこしました。プロトコルを解析しなんとか負荷プログラムを作成できました。準備に3日、解析に1日かかった訳ですが。。。

 みなさんちゃんとドキュメントは書きましょう orz