Entries from 2009-09-01 to 1 month

「テキストプロトコルは遅くないよ」という話

「バイナリプロトコルは速い」「テキストプロトコルは遅い」という言説を、ときおり目にするけど、それって本当なのか。個人的には、それって昔の話だと思ってる。SMTP みたいな、ペイロードについてもターミネータ(とエスケープ)を使うプロトコル*1は確か…

(Min|Max)SpareServers にかわる prefork モデルを考えてみる

そもそも動的にプロセス数を変化させることができて何がうれしいか、というと、負荷が軽い時に、別のタスクを動かしても、アイドル状態のサーバプロセスが邪魔にならない。ってあたりなのかな。でもそのため(だけ)に Scoreboard とか複雑な仕組みを用意す…

C/C++に文字エンコーディングバリデーション機能がないって、ほんと?

通りすがり (2009-09-16 18:09)> PHP以外の言語は「(略)」のに対し ここに挙げられている言語がWebアプリで使われる全ての言語ではない。 例えば、CやC++にはない。付け足せば、PHPやPerlなどのCモジュール内部で起こった不正な文字はスルーされうる。 よっ…

「Linux-DBシステム構築/運用入門」がすごい - あなたのシステム、ガラパゴス化していませんか?

松信さんがやってくれました。ずいぶん前からデータベースの「正しい」構築と運用方法についてまとめた本はないかなーと思ってました。自分はこれまで、様々なネットワークアプリケーションのプログラミングやデータベースの設計、チューニングを行ってきて…

HTTP::Parser::XS - a PSGI compatible, fast http parser

んー、と思って、書いた。GitHub - kazuho/p5-http-parser-xs: a fast http parserBLURB は、 PSGI のリクエストオブジェクトを返す 高速 同期 httpd, 非同期 httpd のどちらを実装する際にも使用可能 POST コンテンツのハンドリングはご自分で いったんファ…

apache の mod_cgi のヘッダハンドリング

値が空のヘッダもセットする 同一名のヘッダが複数回出現した場合は ", " で結合する 複数行ヘッダの値は、2行目以降は先頭の空白を含む形で結合する よって、 Foo: Foo: [SP][SP]abc [SP]de Foo: ehの場合の環境変数 HTTP_FOO は、 ,[SP][SP][SP]abc[SP]de…

アプリケーションサーバで非同期処理をするかしないかの分水嶺

mala さんのまとめは、わかりやすいなぁと思いました。ただ、傍論なんですが、 既存のマルチスレッド/マルチプロセスのサーバーで、常にリクエスト処理待ちの待機しているプロセスがある状態の場合は(+その並列数でCPUのパフォーマンスが劣化しない場合は)、…

FastCGI プロトコルってなんのためにあるのかわからない

どういう場合に便利なんだっけ。てか HTTP プロトコルでいいじゃんみたいな。たとえば httpd とアプリケーションサーバを分割するような環境なら、apache + fastcgi external server みたいな構成よりも、apache (mod_proxy + mod_proxy_balancer) + apache …