TOPOBDN - 開発者向け情報技術ガイド > EasyBlocks教育機関向けProxyモデル 補足情報

補足情報

複数台のProxyによる負荷分散の方法

 Proxyの自動設定スクリプトを作成し、ローカルファイル又はHTTPサーバー上のファイルとして、クライアントPCに適用します。proxy.pac (Proxy Autoconfig)等のファイル名で保存し利用して下さい。

クライアントPCのホストアドレスによって、接続先のProxyを切り替える場合の例

function FindProxyForURL(url, host) {
// Proxyサーバーのリスト (2台以上指定することを想定)
// 最後のホスト末尾に「,」不要
var proxy_list = new Array(
"PROXY 172.16.14.247:8080" ,
"PROXY 172.16.14.244:8080"
);

// 判定に使用する、自分のIPアドレスのオクテットを指定する (0/1/2/3)
// 172.16.10.200 の 10 で判定する場合は 2、200 で判定する場合は 3 を指定
var octet = 3;


// *** 以下変更不要 ***
var ipaddr = myIpAddress();
var split_ipaddr = ipaddr.split('.');
var proxy = 'DIRECT';

// 指定オクテット を Proxyリストの数で割った余りを得る
var proxy_choice = (split_ipaddr[octet] % proxy_list.length);

// 前処理で得た値で、Proxyリストから選択
proxy = proxy_list[proxy_choice];

return proxy;
}

クライアントPCの所属ネットワークによって、接続先のProxyを切り替える場合の例

function FindProxyForURL(url, host) {

     var ipaddr = myIpAddress();
     var proxy = 'DIRECT';

     // 以下の分岐を記述する
     if (isInNet(ipaddr, "172.16.0.0", "255.255.255.0")) {
          proxy = "PROXY 172.16.14.247:8080";
     } else if (isInNet(ipaddr, "172.16.10.0", "255.255.255.0")) {
          proxy = "PROXY 172.16.14.244:8080";
     } else {
          proxy = "PROXY 172.16.14.244:8080";
     }

     return proxy;
}

目次に戻る

ページの先頭へ戻る