タグ

ブックマーク / dsas.blog.klab.org (9)

  • 負荷試験ツール「インターネット破壊」を公開しました : DSAS開発者の部屋

    負荷試験ツール インターネット破壊を公開しました。 こちらはずっと社内で負荷試験に使用していたツールです。社内で使用していたものなので、ソーシャルアプリ向けの機能などが多少追加されていますが、もちろんんそれ以外のWebアプリケーションでも使用できます。 基的にはApache JMeterのようなWebアプリケーションむけのシナリオ負荷試験ツールです。コマンドラインオペレーションだけで実行でき、サーバー上で簡単に負荷試験を実施できるのが特徴です。POSTリクエストなどはもちろん、レスポンスのチェックやUserAgentの偽装、ランダムな値をパラメーターにセットする機能も実装しています。 注意: 当然ながら自分の管理下にないサイトに向けて負荷試験ツールを実行するのは絶対にやめてください。非常に危険です。 物騒な名前がついていますが、これは完全にわたしの小児的感性の趣味によるところです。地震で

    負荷試験ツール「インターネット破壊」を公開しました : DSAS開発者の部屋
  • mod_mod: Apache module を動的にコンパイルして実行する Apache module : DSAS開発者の部屋

    現在 WEBアプリケーションの開発言語といえばいわゆる Light Weight Langage が主流の様な気がしますが、C言語で WEBアプリケーションを書きた いと思った時、どのような方法があるでしょうか。一つはコンパイルした実行 オブジェクトを CGI として呼び出す方法、もう一つは apache module を書く という方法があると思います。 CGI の場合プロセス起動のオーバーヘッドがありますが apache module の 場合非常に高速です、にも関わらず apache module による WEB アプリケーショ ンの開発があまり流行っていないのはやはり、コード変更の度にコンパイルし なければならない事と、反映の際に apache を再起動しなければならない事が 原因ではないかと思います。 そこで、apache module っぽい C言語のコードをサーバー上で動的に

    mod_mod: Apache module を動的にコンパイルして実行する Apache module : DSAS開発者の部屋
    akahigeg
    akahigeg 2008/01/22
    開発時に便利そうだ
  • DSAS開発者の部屋:携帯ゲートウェイのIPアドレス帯更新を効率的に確認する方法

    携帯電話各キャリアは、そのゲートウェイのIPアドレス帯域を公開しています。 DoCoMo au SoftBank WILLCOM 携帯ブラウザからのアクセスの場合、このIPアドレスがソースアドレスとなるので、アクセス制御や判別のために使っている方は多いのではないかと思います。 今回は、このIPアドレス帯の更新を効率的に確認する方法についてのお話です。 更新されたかどうかの確認だけならアンテナ系のWebサービスを使えばよいのですが、それだけだと、 どのIPアドレス帯が追加・削除されたのかわかりづらい。 IPアドレス帯のコピペが面倒くさい。 といった不満点があります。 そこでNet::CIDR::MobileJPというPerlのモジュールの出番です。(作者はモバイルファクトリという会社の方のようです) このモジュールには与えたIPアドレスが携帯かどうかを判別する機能があるのですが、次のようにす

    DSAS開発者の部屋:携帯ゲートウェイのIPアドレス帯更新を効率的に確認する方法
  • なぜ apache module を更新すると Segmentation fault するのか : DSAS開発者の部屋

    今回は、apache module について気になることがあったので紹介します。 先日 バージョンアップするために apache module を更新した直後 apache が Segmentation fault してしまうという問題に気が付きました。 Segmentation fault した後に apache を再起動すれば、新しいモジュールが反映されて正常に動作するものの何故この様なことが起こるのか不思議に思い原因を調査してみました。 % curl http://localhost/ curl: (52) Empty reply from server レスポンスが空です。apache のログには [Thr Mar 29 17:52:01 2007] [notice] child pid 20001 exit signal Segmentation fault (11) この様なエ

    なぜ apache module を更新すると Segmentation fault するのか : DSAS開発者の部屋
    akahigeg
    akahigeg 2007/03/30
    へぇ
  • いっしょにDSASつくりませんか? : DSAS開発者の部屋

    ただいまKLabでは一緒にDSASを創ってくれる方を絶賛大募集中です!! ※募集要項から年齢制限をなくしました(2007/07/05 追記) 「いきなりなんなんだ?」って思いますよね、そうですよね、でもそのまんまなんです、はい。 おかげさまでKLabも社員数150人を超える規模に成長し、多種多様なエンジニアが集まる会社になりました。 ごくたまに、「KLabさんはインフラまわりのエンジニアの層が厚いですよねえ」なんて、大変ありがたいお言葉を頂く事もあったりしますが、会社の成長の度合いのわりにはインフラ系のエンジニアの人数はさほど増えていないような気もします。(贅沢な悩みかもしれませんが・・・ 「なんでかなあ」などと思いつつ、久々にKLabのホームページをみているとあることに気づきました。 「そもそも募集してないじゃんか!(笑)」 そりゃあ、募集していなければ来てもらえるわけないですよね、とい

    いっしょにDSASつくりませんか? : DSAS開発者の部屋
    akahigeg
    akahigeg 2007/03/06
    インフラ楽しいよインフラ
  • DSAS開発者の部屋:GREEさんの勉強会の資料を公開しました

    先日発表してきた、グリーさんの 第9回 オープンソーステクノロジー勉強会 『DSASのいろいろ』の発表資料と音声を公開しました。 発表資料 (PDF, 2,294 KB) 音声 (mp3, 32,151 KB) 発表はこんな内容です。 自己紹介 [0:22] (1) DSASの特徴の紹介 [6:34] 設計思想、全体構成など (2) DSASの構成要素の紹介 [17:22] ロードバランサ - LVS, keepalived [17:33] ネットワークブートの活用 [30:23] 故障に強いストレージサーバ - DRBD [37:15] NICの二重化 - bonding [44:29] シリアル接続 温故知新 [46:24] サーバリソースの見える化 - ganglia [49:11] 質疑応答 [58:00] 発表はかなり駆け足でしたが、 ロードバランサ (LVS, keepaliv

    DSAS開発者の部屋:GREEさんの勉強会の資料を公開しました
  • DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!

    MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in

    DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング!
    akahigeg
    akahigeg 2006/12/26
    チェックツールがある
  • DSAS開発者の部屋:keepalivedの運用ノウハウお見せします 〜 設定ファイルを同期する

    keepalivedはLinuxで冗長構成を組む道具としてとても便利ですが、運用面に関する配慮に物足りなさを感じることがあります。例えばIncludeがないとかIncludeがないとかIncludeがないとか(笑) naoyaの日記でnaoyaさんも悩んでいるようですが、設定ファイルをうまく保守する仕組みをどう作るかが導入する際の大きな鍵になると思います。今回は、DSASではどのようにして2台のkeepalivedを運用しているかを少しだけご紹介させて頂きたいと思います。 1) マスターで設定ファイルを編集する 2) バックアップに設定ファイルを転送する 3) バックアップで設定を反映する 4) マスターとバックアップの差分を確認する 5) マスターで設定を反映する 具体的にはどのようにしているかというと、、、 lv1:# vi 設定ファイル lv1:# lvs-sync -ine lv1

    DSAS開発者の部屋:keepalivedの運用ノウハウお見せします 〜 設定ファイルを同期する
  • Apache のログのアクセス権の分離 : DSAS開発者の部屋

    DSAS の特徴の一つに,複数のサービスを同じサーバ群で運用する,というのがあります.DSAS は Web サーバだけでも数台〜数十台で構成されますが,これらのサーバは同時に複数のコンテンツのサービスを受け持っています.つまり,A のサーバでは a と b のサービスを動かし,B のサーバでは b と c のサービスを動かす,といった具合です.こうすることで,コンテンツ毎に異なる負荷傾向をならすことができ,突発的な負荷の増大に対しても,速やかな処理能力の増強が可能になります.ただし,問題が一つあります. ログには,時として個人情報につながる情報が記録されます.ですので,コンテンツのログは担当者以外が読めてはいけません.一方,通常はコンテンツ a と b ではその担当者が,そして時には担当部署もが異なります.つまり,コンテンツ a の担当者が,b のログを読めるのは読めてはいけない,というこ

    Apache のログのアクセス権の分離 : DSAS開発者の部屋
    akahigeg
    akahigeg 2006/07/28
    ログの出力先にファイルではなくパイプを指定する例。CustomLogディレクティブのマニュアルとあわせて。
  • 1