2ch特化型サーバ・ロケーション構築作戦 Part19
325 :
root▲ ★ :
2005/10/13(木) 16:38:08 ID:???0 BE:365322-### この機会にex11のメモリディスクを、 md /md mfs rw,nosuid,noatime,-s128m,-i2048 0 0 と/etc/fstabに書く形から、 /sbin/mdmfs -S -M -s 128m -i 2048 -o noatime,async md /md とスタートアップ時に設定する形に変えてみた。 ・swapではなくて実記憶を直接mallocで与える ・softupdateの処理をしない ・書き込みを非同期モードに これで、/md のパフォーマンスアップができればいいなと。
326 :
ピロリ :2005/10/13(木) 16:50:15 ID:W/lG8nMa0
>これで、/md のパフォーマンスアップができればいいなと。 何がいけにえになるんですかねぇ?
327 :
root▲ ★ :2005/10/13(木) 16:56:26 ID:???0 BE:7387799-###
>>326 メモリディスクに、実記憶を割り当てるということです。
FreeBSDのメモリディスク(md)には、4つモードがあります。
man mdによると、
malloc Backing store is allocated using malloc(9). Only one malloc-
bucket is used, which means that all md devices with malloc
backing must share the malloc-per-bucket-quota. The exact size
of this quota varies, in particular with the amount of RAM in
the system. The exact value can be determined with vmstat(8).
preload A file loaded by loader(8) with type `md_image' is used for
backing store. For backwards compatibility the type `mfs_root'
is also recognized. If the kernel is created with option
MD_ROOT the first preloaded image found will become the root
file system.
vnode A regular file is used as backing store. This allows for mount-
ing ISO images without the tedious detour over actual physical
media.
swap Backing store is allocated from swap space.
で、一番下がこれまでのジンギスカンで使っているもので、
今回それを一番上にしたということです。
328 :
root▲ ★ :2005/10/13(木) 17:01:41 ID:???0 BE:5745997-###
で、簡単にいうと、swap方式だと、システムの状況によっては HDD(スワップ領域)を触る可能性があるということです。 malloc方式だと、それは起こりません。
329 :
root▲ ★ :2005/10/13(木) 17:04:02 ID:???0 BE:5107687-###
ということで、メモリが2Gあってそのうちの128Mとか160Mとか割り当てる形なら、 こちらの方がパフォーマンスが出るのではないかという考えです。 あとの設定変更2つは、基本的にはHDDでやっているデータ破損防止処理を メモリディスクではオフにしよう(意味ないし)ということです。 これはたぶん、今のジンギスカンにもすぐに応用できるはず。
330 :
root▲ ★ :2005/10/13(木) 17:09:16 ID:???0 BE:1095326-###
ということで、実記憶というかカーネルのmalloc領域を直接使うので、 メモリが貧しいサーバだと設定内容によってはどきどきするかも、というのが、 いけにえってことになるですね。 512Mに32Mとかなら、bananaでもやってみる価値はあるかも。
mdでsoftupdateをasyncにするってのは確かにありかも。 でもmdだと「光の速度1/10だったのが1/9.5に成りました」という領域に近い気配。
332 :
root▲ ★ :2005/10/15(土) 00:48:57 ID:???0 BE:2919348-###
サーバダウン(鯖落ち)情報 part81
http://qb5.2ch.net/test/read.cgi/operate/1129187861/55 > The FreeBSD Projectは、いくつかの抜本的開発を進めるために
> FreeBSD 5系の開発に長い時間をかけてきた。FreeBSD 5系で
> 目標としてきた実装にある程度目処が立ちシステムが安定してきたことから、
> The FreeBSD Projectは早めにFreeBSD 5系をFreeBSD 6系に移行させ、
> currentをFreeBSD 7系、stableをFreeBSD 6系という本来の開発体制に
> 戻したい意向だ。これまではFreeBSD 4系とFreeBSD 5系を同時に対処するなど、
> 開発チームに高い負荷がかかっていた。
やはり、5系を早くやめて、安定(運用)系は6系に移行させたいってことで。
そううまくいくかは、6.0Rの出来にかかっているのかなと。
>>331 そう思っていたんですが、特にファイルシステムがGiant lockで動くシステムだと、
結構影響はあるみたい。
一度、ベンチかBG系あたりでテストでもってかんじで。
Apache 2.0.55 Released
334 :
root▲ ★ :2005/10/16(日) 00:33:56 ID:???0 BE:365322-###
335 :
ピロリ :2005/10/16(日) 05:32:13 ID:CGJyb5fe0
いやー そんなにうまい話はないんでないかい。 何かを得るにはなにか生贄が必要なのは太古から変わっていないかと、 と、おじぃさんがいってました。
ex11のメモリディスク、 softupdate off + async を softupdate on に戻したら、軽くなった。 この条件で使う限り、softupdate のほうが、 async よりも圧倒的にコストが低いということになります。 書き込み(bbs.cgi)のCPU使い具合やはけ具合が、全然違う。 しかし、なんでだろう。
そうやって使うことが前提だからとか単純な理由だったりしたらワロス
buffer -> sync(softupdates) -> md は単に速いHDDとして使えるけど。 buffer -> async -> md はsoftupdatesでやっているキューの整理が入らないからか? HDDの書き込みという桁違いのボトルネックがあればasyncは速いけど、mdだと整理していない分遅いとかか。
339 :
root▲ ★ :2005/10/18(火) 02:16:45 ID:???0 BE:1095034-###
>>338 連続したメモリ領域のアクセスのほうが効率がいいとか、
そういう話なのかしら。
>>339 ですかねー
>>338 でもいっているようにソートしてあればmdは絶大な威力を発揮、
てんでんばらばらな追記だとファイルシーク(という言い方があっているか微妙)に
(通常のメモリアドレス検索より)激しく時間を食うのでそのぶん重くなりやすいってことなんですかね