トップページnetwork
8コメント5KB

疑似WAN環境の構築

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさんNGNG
業務用アプリを作成している者です。
いわゆるC/Sシステムを作成しているのですが、LAN内で使うアプリもあれば
WAN(専用線64K)で使用するアプリもあります。
テストの再、WAN環境でどれほどのパフォーマンスが出るのか確認したいの
ですが、LAN内で擬似的に64Kの帯域幅を作ることは可能でしょうか?

よろしく御願いします。
0002FiveNGNG
よくやるのは Cisco25xx を 2 台用意してシリアルのクロス接続して
clock rate 64000
とかする方法ですね。

あとは Linux の shaper を使うとか。以下のリンクが参考になるでしょう。
http://www.snafu.freedom.org/linux2.2/docs/shaper.txt
http://teri.2ch.net/2ch/test/read.cgi?bbs=network&key=956403395&ls=50

ちなみに Oracle をお使いなら注意が必要です。WAN 上での性能の悪さは有名です。
その欠点を補う製品として FastConnector というものがあります。
一応予算に入れておいたほうがよいでしょう。
・FastConnecter vs. Net8 のベンチマーク
 http://www.fastconnector.com/product/fc0420.pdf
あとデータベースリンクは止めておきましょう。遅延が倍になります。
0003名無しさんNGNG
>Fiveさん
早速のレスありがとうございます。
CISCO2台を手配する余裕はさすがにないのですが、古いPCなら2@`3台
ゴロゴロしてるので、これを生かそうと思います。
ちょっと前に、FreeBSD + ipfw でCATV用のNAT付きルータを作成した
事があるので、多分大丈夫(かな?)。

実は本日、WAN上で動作テストを行ったところ、あまりのレスポンスの
悪さに頭を抱え込んでしまった始末。というのが、スレッドをたてた背景
なのですが、こういったアプリを作成する際の「べからず」集のような
サイトはどこかにないものでしょうか?

>ちなみに Oracle をお使いなら注意が必要です。WAN 上での性能の悪さは有名です。
幸いにもOracleではなくて、Inprise社のInterbaseです。
0004FiveNGNG
> こういったアプリを作成する際の「べからず」集

あんまりないような気がします。プログラム板でそういう趣旨のスレッドを
立てたら情報が集まるんじゃないですか?

ちなみに自分の知っている禁止事項(というか Tips)はこんな感じです。
・VB + DBGrid Control は表示に時間がかかる
 (データ量が多いと表示まで 10 秒かかるケースもある)
・ODBC は遅い。1レコード Fetch するたびにパケットを生成するから。
 大量のレコードを Fetch しないようにアプリを設計せよ(StoredProcedure の活用)。
 Fetch せざるを得ないならローカルでキャッシュせよ。
・SQL を最適化せよ。無駄なレコードは一つも流すな。
 (SELECT * は厳禁)
・WAN で圧縮する設定にせよ。64k なら CPU パワーはあまっている。
 SQL のトラフィックはテキスト主体なので圧縮が有効。実質スループットをかせげ。
00051NGNG
おはようございます。

>Fiveさん
>・WAN で圧縮する設定にせよ。64k なら CPU パワーはあまっている。
> SQL のトラフィックはテキスト主体なので圧縮が有効。実質スループットをかせげ。
これはとても興味があるのですけど、RDBMSによって実装されている物なんでしょうか。
それとも、なにか別の方法で実現できるのですか?

ちょっと話が前後しますけど
>あとデータベースリンクは止めておきましょう。遅延が倍になります。
というのは、テキストボックス等とレコードセットの項目を関連づける
機能の事ですか?

質問ばかりで申し訳ないです…
0006FiveNGNG
> RDBMSによって実装
いえ、ルータが持っている圧縮機能を使う、ということです。
Cisco@` Yamaha は WAN 側のトラフィックを圧縮する機能を持っています。

> データベースリンク
Oracle Server に特有の機能で、サーバーが別のサーバーに問い合わせを
転送する仕組みをいいます。今回の場合には気にしなくてよいと思います。
0007そのまんまななし。NGNG

データベースリンク


select a.scott@`b.tiger
from GikoNeko@db2ch@`Omaemona@dbhoge;

例の@以降でDB名(@db2ch@`@dbhoge)を指定することで
指定したDB名のオラクルのテーブルから
データを持ってくることができます。
このことをデータベースリンクといいます。
0008そのまんまななし。NGNG

やべ、間違えてる。。。


select a.scott@`b.tiger
from GikoNeko@db2ch a@`Omaemona@dbhoge b;

こちらが正解です。
ちなみに死ぬほど遅くなりますよ。
(死ぬほど便利ですが。。。)
■ このスレッドは過去ログ倉庫に格納されています