2014年5月9日金曜日

アプリケーションから共有フォルダアクセス時の反応速度について

Activeディレクトリやドメイン管理といった複雑高機能なものではなく、小規模ユーザーの構成では多くの場合にサーバーや他のPCに対して共有フォルダを使った運用が行われています。


基本的な機能はエクスプローラが標準で提供している共有機能を利用していて、アプリケーションから直接的にネットワークドライブとして認識さっせるような形態は少ない筈です


SQLサーバー等にアクセスするアプリケーションの場合は接続先を設定する画面等が用意されおり認証やデータストレージ先の場所を一般的な共有フォルダ名で設定できるようになっています


ウィンドウズアプリの殆どがネイティブでこれらをサポートしていて利用上は下記のような各種の設定が認識できる仕組みです


UNCパス          ¥¥computer¥share
ネットワークドライブ    drive_letter:¥
IPアドレス接続       ¥¥xxx.xxx.xxx.xxx¥share


これらの接続先へはエクスプローラが代行処理をしているので利用者側はシームレスにアクセスできる訳ですが、実際には状況に応じて異なるネットワーク参照の手順が実行されています。


それぞれが管理プロトコルや管理層が異なるためですが技術的な仕組みは各所の情報を参照して頂くとして、実用上の問題としてプロセスアクセス時のレスポンスタイムがあります。


アプリケーション側から該当データへのリクエスト処理が行われたときに規定時間内にレスポンスが無いとエラーを返す場合があります。 特に問題なのは一定時間アクセスが無く待機状態にあったあとに接続をする場合、上記中のUNCパスはネットワーク上のマスタブラウザ機に照会を行ってから該当先を特定する動作を行うため僅かに反応が悪くなります。


人間が操作する上での待機時間と違いアプリケーション上ではその僅かな時間が大きく影響します、以前にWindows8で弥生販売のサーバー接続時に異常に反応が遅い症状がありましたがこれらはその例です。 Windows7からWindows8でネットワーク仕様が変わったかどうかは確認できませんが、少なくともIPアドレス接続にする事により無駄な参照作業をバイパスして通常のレスポンスを確保していることは間違いありません。



参照記事

ネットワーク上の共有フォルダに接続する 

FQDN または IP アドレスを使用すると、イントラネット サイトがインターネット サイトとして判別される



0 件のコメント:

コメントを投稿