[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:02935] Re:NFS performance
宮田です。
鴨志田さん、あらきさんからの
>rsize=8192,wsize=8192をつかえばいいのかな。
>nfs(5)より、
>
> tcp Mount the NFS filesystem using the TCP pro-
> tocol instead of the default UDP protocol.
> Many NFS severs only support UDP.
あたりを試してみました。どうもありがとうございました。
まず tcp は
"NFS over TCP is not supported."
ということらしいです。
rsize=8192,wsize=8192 は、
これでだいぶ早くなりました。他の値も試しましたが、これが一番早かったです。
しかしまだまだ体感的に「遅い」と感じるくらい遅いです。
(それでも普通のファイルコピーでnfs-writeパケットの数が異常に多かったのは
解消されたようでした)
実はもう一つNFSがらみで問題があったのですが、(^^;
これも関連がありそうなので。
NISで作ったユーザにNFSマウントのhomeを与えて使った時に、
logout時になぜかNFSのwriteパケットが100個くらい流れます。
そのたびに5秒くらい待たされるので気持ち悪いのです。
それから、NFS-HOWTOに以下のような記述があったので気になっています。
----------------------------( FAQのあたり )------------------------------
9. Linux の NFS クライアントから Sun や BSD のシステムに書き込むと非常
に遅いのですが。
NFS の書き込みは通常同期的に行われます(もしデータを失う危険性を気
にしなければこれを無効にすることもできます)。悪いことに、BSD から
由来したカーネルにおいては、小さなブロックにおいてこれがうまく機能
しない場合があるのです。例えば Linux から 4K のデータを 1K のパケッ
トに分けて書き込もうとすると、 BSD は以下のような動作を行います。
read 4K page
alter 1K
write 4K back to physical disk
read 4K page
alter 1K
write 4K page back to physical disk
etc..
まともなシステムではこの問題は起きません。しかしいずれにせよ Linux
のクライアントがそれほど高速ではないことも事実です。
------------------------------------------------------------------------
ということでいまいち解決できていないというか(^^;
FreeBSDのサーバマシンの管理者が来たら、一度書き込みの同期を
無効にしてみようかと思います。