2006-03-30

λ 回線変更

USEN 8IPから16IP に変更。当初jailのIPアドレス変更を忘れて悩んだ。停止時間は2時間ぐらい?

FreeBSD6.xでjail用のIPアドレス設定の変更後、以下のコマンドを実行したらちゃんとjail内のプロセスを再実行してくれてちょっと感動。

sudo /etc/rc.d/jail restart

そしてなんか12345しか使ってないIPアドレスで嬉しい。

λ 「mixiはいかにして増え続けるトラフィックに対処してきたか」

参照と更新と比率で、更新の比率がそこそこある場合(=レプリケーションが有効に働かない場合)のDB設計の話。

技術そのものとしては「分割して統治せよ」「キャッシュ活用」ぐらいの戦略しか語られてないけど、 「運用しながらどう適用していくか」という視点で見ると結構深いと思う。

1つのテーブルをフィールドのどれかをキーにパーティショニングするっていう機能はMSSQL2005EEでも導入されている。 MSSQL2005の場合は利用側から見ると透過的なので、 運用中にデータベース管理者がチューニングできる。ビジネスロジックをいじらなくても。ていうのがMSに高いお金を払う理由だな。

しかしパーティショニングを伴う環境でEnterpriseEditionを導入するということは、 EEライセンスが大量に要るわけで、あっという間に億の単位の金額になりそう。 そうなるとさすがに自力でビジネスロジックレベルでレコード分割を実装する方が現実的だと思う。その代わり設計時点でデータの流れを見極める必要があると。

λ [FreeBSD] apache2.2 チューニング

2月3日の話の続き。yapache なんてないよなあと当時あきらめていたら、apache2.2だと普通に使えるのが判明。

/boot/loader.conf に以下のように書いておくと、accf_http, accf_data カーネルモジュールが読み込まれる。

accf_http_load="YES"
accf_data_load="YES"

FreeBSDにおけるapache22はデフォルトの設定でこれらのカーネルモジュールによるバッファリングをしてくれる。 ベンチマークはとってないが、フロントのキャッシュandロードバランササーバあたりで利用するとすごくよさげだ。

sysctl kern.ipc.maxsockbufの値は262144だった。主に文字を更新するだけならこんなもんか。画像アップロードしようとすると足りないかな。

カーネルモジュール内でSSLネゴシエーション(しかもSSLアクセラレータカード利用)とかしてくれたら神だが、 そーゆーのはどっかがSSLアクセラレータとして売っている商品そのものであろう。

確認作業

telnet mimori.org 80 で接続しながらSetHandler server-status (ExtendedStatus On)な画面をチェック。 GET / HTTP/1.0(改行)まで入れたところでチェックしても Reading Request な状態は表示されない。

その代わり以前はあんまり見なかった Closing connection な状態を見るようになった。 カーネルに送信内容を投げた後、送信完了するのを待っているのだろうか。

TODO: rotatelogs または cronolog の導入

λ [.NET] Express Edition で ClickOnce を使用する際の注意点

Express Edition は現在無料なのに太っ腹な情報だ

λ Windows Vistaの発売延期で「アップルに一大チャンス到来」の声

Mac OSX v10.5(Leopard) の登場は今年末以降というのを確認したかった。

λ P902iのBluetooth機能をチェック

Bluetooth経由でスケジュールを同期する携帯端末を作ってくれないのはどういう魂胆なのだろう。 フツーの社会人だったら大概欲しいはずなのに、音楽系の機能ばかり増えるのは政治的な事情があるとしか思えない。

[]