人間とウェブの未来
ab-mrubyを使って自分のサイトを継続的にテストしてみた
- 2013-06-11 (火)
- Apacheについて | プログラムについて | 研究について
- 408 views
SPDY対応アプリケーションをC言語で実装する方法
昨日、SPDYのCライブラリであるspdylayがめでたく1.0.0としてリリースされたので早速使ってみました。まずはmacOSX10.8.3で試してみました。ビルド方法はメモに書いていますので参考にして下さい。
今回はSPDYで通信できるクライアントをCで書く際に、どのような実装の流れになるかを紹介したいと思います。本エントリで実装流れを把握したら、spdylay/spdylay.hを読む事をおすすめします。
HTTPのベンチマークパターンとテストを動的に書けるab-mrubyを作った
- 2013-06-06 (木)
- Apacheについて | WEBについて | プログラムについて | 研究について
- 377 views
abコマンドのベンチマークパターンを書けるab-mrubyを作ったを昨日書いたわけですが、今日はab-mrubyに対して、ベンチマーク後の結果からテストをRubyで書ける機能を追加しました。
ab-mrubyのgithubのREADMEに大体書き方は書いていますが、ここでも簡単に紹介したいと思います。
abコマンドのベンチマークパターンを書けるab-mrubyを作った
- 2013-06-05 (水)
- Apacheについて | WEBについて | プログラムについて | 研究について
- 1,013 views
Web屋さんはみんな大好きabコマンドは便利ですが、オプションは複雑で数も多く、複数のホストにそれぞれに対応するオプションを指定してテストしたりすると結構カオスになりがちです。
最近では、httperfやweighttp等のabに変わる次のHTTPベンチマークツールが出てきていますが、やっぱりまだまだ現役で良く使うのはabコマンドだと思います。
そこで、今回はabコマンドの複数のベンチマークオプションのパターンを1つのRubyスクリプトに定義しておいて、それをabコマンドで読み込む事で動的に任意のパターンでベンチマークを行うab-mrubyを作りました。外出しで書いたRubyスクリプトとabコマンドの連携は、ab-mrubyと見てわかるように、mrubyを使っています。
これによって、RubyでURL別にベンチマークパターンを定義しておけば、URL毎にいちいちオプションを指定する必要がありません。ab-mrubyで指定するベンチマーク対象URLから、動的にベンチマークパターンを決定することができます。また、オプションの羅列に比べて非常に可読性も良いので、後から見ても、どういうベンチマークパターンだったかすぐわかるようになります。
Register Underflowを3週間運営してみて
Register Underflowをリリースしてから3週間がたちました。3週間運営してみて思った事を簡単に列挙しておこうと思います。
- Register Underflow(コンピュータ技術情報共有サイト(α版))
- Register UnderflowというWebサービスを作ってみました
- Register Underflowの簡単な使い方
全文を読む
mruby-configの設定値取り出しにCの型を指定できるようにした
mruby-configはRuby側で設定した値をC側で取り出す際に、Cの型としてmrb_valueで取り出す仕様にしていました。
の続きです。
で、個人的にもC側で取り出すんだから、intとかcharとか型指定できたほうが楽だよなぁと思っていた時に、ちょうどmatzさんもそっちの方が便利じゃない?と言っていたので、実装することにしました。
基本はmruby APIのmrb_get_argsにならって、同じような仕様で値を参照できるように実装して、C側で使えるmruby-config APIも用意しました。
mruby-configにtag付のconfigを書けるようにした
- 2013-05-23 (木)
- Apacheについて | プログラムについて | 研究について
- 637 views
「mrubyで簡単にCアプリの設定ファイルが作れるmruby-config作ってみた」の続きです。
前回のmruby-configの機能では、グローバルな設定しか書けなかったのですが、tag付可能な設定を書けるようにしました。Apache httpdとかでいうと、ディレクティブで囲ってディレクティブのパラメータの違いによって設定を変える、というような振る舞いを記述することができるようになります。
mrubyで簡単にCアプリの設定ファイルが作れるmruby-config作ってみた
- 2013-05-22 (水)
- Apacheについて | プログラムについて | 研究について
- 1,229 views
C言語でサーバアプリやクライアントアプリを作っていると、じょじょに規模が大きくなり、アプリの設定を外出ししたいなぁ、なんて思いはじめるのはよくある事だと思います。
でも、なんとなくその設定ファイルのParser書いたり参照のインターフェイスを書くのも面倒だし引数で渡すようにするかぁ、なんて思いはじめたりもします。
でも結局引数が大量に増えだして、そのusage表示もカオスになって面倒になり(更新が止まり)、結局もう一度、「設定ファイル作るかー」なんてことになるのはよくある事だと思います。
そこで、そういう人のために,mrubyを使って簡単に設定ファイル(Rubyで書く)を外出しできるmruby-configというmrbgemを作ってみました。こういうことが簡単にできて、かつ、軽量なのがmrubyの良いところですね。
これを使うと、Rubyで書いた設定ファイルを、簡単にCソースの中で呼び出して、その値を参照することができます。
Apache 2.4系でのモダンなアクセス制御の書き方
- 2013-05-13 (月)
- Apacheについて | 研究について
- 3,408 views
これまでのApache2.2系以前でのアクセス制御の書き方は賛否両論でした。僕はあまり好きじゃありませんでした。
過去のアクセス制御に関しては、以下の記事がとてもわかりやすくまとめられていると思います。
こせきの技術日記 - Apacheのアクセス制御をちゃんと理解する。
ここで、以下のように言及されています。
こんなバッドノウハウ、本当はどうでもいいと思う。Apache 3.0では、かっこいいDSL(VCL)で書けるようにする構想があるらしいのでがんばってほしい。
ということで、2.4系ではDSLとはいかないまでも、Require*というディレクティブを使ったモダンな書き方ができるようになったので、それを2.2系以前のアクセス制御の記述と比較しながら紹介したいと思います。
Register Underflowの簡単な使い方
先日、Register Underflowというコンピュータ技術共有のためのWebサービスを作ってみたのですが、予想以上にたくさんの方に登録して頂いて、とてもうれしく思っています。
Register Underflowを簡単に説明すると、
Twitterやその他のSNSでやりあっている議論の内容ってすごい良い内容が多いと思うのですが、togetterやその他のサービスにまとめないと見つけにくくなっていきますし、でもそれも意外と面倒で、かといってブログに誰かがまとめるのも大変で、どうにかその中間ぐらいの手間でそういった複数のユーザの技術的な議論をうまくまとめられないかなぁ
というのが趣旨です。
そこで、今日は使い方や言葉の定義など、そういった説明をほとんどしていなかったので、本エントリで簡単に説明しようと思います。
- 検索
- フィード
- メタ情報