Entries from 2009-12-01 to 1 month
先のエントリ (ウェブアプリケーションサーバを複数台構成とか2010年代には流行らない) ではボトムアップに煽った書き方をしたけど、自分がトップダウンでどういうふうに捉えているかについて。以下、あくまでも私見です。いわゆるネット業界は1990年代後半…
タイトルは煽り入ってますが。仮に動的ページを生成するのにかかる時間が1秒、そのうちデータベースやmemcached等リモートサーバへの問い合わせ時間を除くいたCPUの処理時間が0.1秒とする。また、ピークのリクエスト処理量は、平均の2倍とする。そうすると…
Tritonn のホットバックアップ環境を構築しようと思って調査。結論から言うと 漢(オトコ)のコンピュータ道: MySQLバックアップ頂上決戦!! LVMスナップショット vs InnoDB Hot Backup の「MyISAMをスナップショットでバックアップ」でよさそう。確認したこ…
Apache の設定ファイルおける AddType を Plack でどうやるのか。Plack::App::File (あるいはそれをラップしている Plack::Middleware::Static) は、拡張子から Content-Type を決定するのに MIME::Types を使っている thanks to miyagawa-san。なので、たと…
Plack::Server::Standalone 系を使ってウェブアプリケーション開発と運用が楽になる話 - JPerl Advent Calendar 2009 Perl のローレベルエラー処理 (もしくは Errno.pm のススメ) - JPerl Advent Calendar 2009 さすがに今年はこれ以上書かないと思う。どっ…
$ echo うお座 | mecab う 感動詞,*,*,*,*,*,う,ウ,ウ お座 名詞,一般,*,*,*,*,お座,オザ,オザ EOS $ その発想はなかった...
tmpdirをtmpfsにしてても、LOCK_openを2秒間握ったままとかorz... innodb_file_per_tableをオフにしたら、ぐっと症状が改善した。なお、環境は MySQL 5.1.41 (linux, x86_64, innodb_plugin)参考: Slow DROP TABLE - Percona Database Performance Blog (tha…
Perl等のLLでウェブアプリケーションサーバを書いていると、普通はマルチプロセスモデル (apache なら prefork とか) で運用することになると思う。で、それらがどれだけメモリを使っているか、っていうのはチューニングにおいて重要になってきたりする (ん…
「NoSQL」というバズワードが注目を集める昨今、私も「http://shibuya.pm.org/blosxom/techtalks/200911.html」に登壇の機会をいただき、SQL派の立場で発表したりしています (発表資料)。ですが、言うまでもないことですが、RDBMSやKVSに限らず、全てのソフ…
RSSリーダーとかブックマークサービスとかアクセス統計サービスとかを作っていると、クローラの運用は必須。クローラは保護したいから、当然DMZに設置する。でもクローラがDMZ内にある他のホストにアクセスできちゃうとまずいわけで。で、クローラからのアク…
だって、ユーザーは全てのサーバ実装を使いたいわけじゃないから。例えば Plack::Server::Standalone::Prefork は Parallel::Prefork に依存してるけど、これを Makefile.PL に書いてないのは意図的、ということ。FCGI にしても同じ。全部インスコするには T…
例によって16KBランダムアクセス。コントローラは MCP55 Pro。速い。仮想化してないのと、内蔵のまともなコントローラ使ってるからかなぁ。 並列度 Read (MB/sec) ← IOPS Write (MB/sec) ← IOPS 1 61.8 3,950 14.1 902 16 158 10,100 14.0 893
_ djb が自作ツールの更新を放棄してからずいぶんたって、qmail やら djbdns やらはゆっくりと置き替えが進んでいるようだ。が、いまだに使い続けられているものもある。具体的には daemontools。いまだに daemontools を 使うネタが書かれているのを見て絶…
Re http://d.hatena.ne.jp/perlcodesample/20091130/1258979624, http://mt.endeworks.jp/d-6/2009/12/scriptsubimport.htmlスクリプトとコードとテストを単一のファイルにまとめたい*1という需要が、かねて自分の中であったので教えを請うた結果、以下のよ…
今更ですが。 Q4M を使用していると、$dbh->execute がキュー待ちの間ブロックしてくれます。これは便利なのですが、SIGINT をうけとったら終了してほしい。通常の処理としては SIGINT をうけとったら終了します。ですが、$SIG{INT} = sub { warn "\シグナ…
I/O負荷が高い時に、キャッシュに入ってないコマンドを実行しようとするとひっかかる。なんでかなーと思って調べてみたら、XenServer のデフォルトは以下のとおりだった。 hdparm -W 1 dom0 の I/O エレベータは noop domU の I/O エレベータは noop SATA 向…
諸般の事情により、XenServer 5.5にeSATA(Si3132)経由でIntel X25-Mをつないだので、ついでにベンチマーク。データベース系の用途ということで、例によって randombench -b 16 -c 1 -f 102400。 実機(旧) XenServer(DomU) ← (16並列) Read (MB/sec) 38.0 32.…