ソフトウェア配布機能について紹介します。
弊社製品「SKYSEA Client View」の標準機能であるソフトウェア配布機能の歴史を通じて、機能開発の考え方や技術的要素を深掘りする連載です。
前回の記事
弊社製品「SKYSEA Client View」の標準機能として「ソフトウェア配布」機能がございます。
本連載はソフトウェア配布機能の歴史を通じて、自社商品開発における機能開発の考え方や技術的な要素に関して深掘りをしていくシリーズとなります。ご一読いただければ幸いです。
今回は第二弾「~②負荷分散について(キャッシュ配布)~」です。
「ソフトウェア配布」機能では、お客様の環境に応じて柔軟に対応できるように、サーバーやネットワークの負荷分散方法を複数用意しています。
- キャッシュ配布
- 分散配布
- マルチキャスト配布
- ソフトウェア配布用中継端末
- ネットワークの帯域制限機能
今回はその中でも「キャッシュ配布」の仕組みについて紹介いたします。
負荷分散について
まず初めに、負荷分散の重要性について説明いたします。
多台数の端末機に対してソフトウェアを配布する場合、端末機からSKYSEAサーバーへのリクエストが集中し、SKYSEAサーバーが高負荷状態になってしまう恐れがあります。
※接続台数に制限を設けているため、高負荷状態にまではならないですが配布完了までが遅くなります。
このような状態を避けるためにキャッシュ配布オプションが生まれました。
キャッシュ配布について
文字通り端末機がソフトウェアのキャッシュファイルを保持し、サーバーから端末機に配布するのではなく、サーバーの代わりに端末機が他の端末機に配布するに配布するようになるオプションです。
キャッシュ配布の仕組みについて
ここからはキャッシュ配布がどのように動いているかを簡単にご紹介いたします。
まず初めにソフトウェア配布が行われると、マスターサーバーから配布対象の端末機に対して、端末機を代表(以下、代表端末と記載)して、先にサーバーからソフトウェアをダウンロードできるかどうかを聞きます。
端末機から”代表端末になれる”という返答があれば、代表してソフトウェアを配布し、完了すれば端末機はキャッシュとしてソフトウェアを保存し、他の端末機にソフトウェアを配布できる状態になります。
その後、キャッシュを持っていない端末機は、ブロードキャスト通信を用いて、同セグメント内の端末機にキャッシュを持っているか聞きます。
キャッシュを持っている端末機から応答があれば、応答した端末機から配布してもらいます。
配布が終われば、その端末もキャッシュ保持端末機となり、他の端末機に配布することが可能になります。
さらに他の端末機も同様に配布が進んでいきます。
このようにどんどんキャッシュ保持端末機が増えていき、ネットワーク、サーバーの負荷軽減と同時に、全端末に配布完了するまでの時間の短縮化も期待できます。
※通信環境によっては短縮されないこともあります。
以上がキャッシュ配布の簡単な紹介でした。
キャッシュ配布オプションの中にも様々な設定が存在し、色々な環境に合った設定が可能です。
- セグメント内の同時ダウンロード端末台数制限設定
- キャッシュ端末への同時接続台数制限設定 など
このようにただ機能を用意するだけではなく、サーバーやネットワークの負荷などを考え、多種多様なお客様の環境において、快適かつ簡単に利用できるような工夫を行っています。