7

私はJavaコーダーであり、ネットワークの仕組み(基本的なUDP / TCP接続を除く)にあまり精通していません。

米国、アジア、ラテンアメリカ、ヨーロッパのマシンでサーバーを実行しているとします。ユーザーがサービスを要求するとき、私は彼らの要求が彼らに最も近いサーバーに行くことを望みます。

mycompany.comという1つのアドレスを持ち、どういうわけかリクエストを適切なサーバーにルーティングすることは可能ですか?どうやら誰かがcnn.comに行くとき、彼らは彼らの近くのサーバーから写真やビデオなどを受け取ります。率直に言って、それがどのように機能するのかわかりません。

ちなみに、私のサーバーはWebページを提供していません。関連する場合に備えて、株式市場データなどの他のサービスを提供しています。

私はプログラマーなので、ソフトウェアでそれをどのように行うかを知りたいと思っています。これは単なる好奇心に過ぎないので、商用製品やサービスへのポインタは、この問題を理解するのにあまり役立ちません:)

4

4 に答える 4

0

ジェフが述べたように、1つのアプローチはIPアドレスを使用することです:http://en.wikipedia.org/wiki/Geolocation_software

私の経験では、これは最も近い比較的大きな都市(少なくとも米国では)に正確です。これを支援するためのオープンデータベースがいくつかあります(wikiリンクを参照)。次に、この情報に基づいて画像タグを生成し、リンクなどをダウンロードできます。

最寄りのサーバーを見つけることに関しては、いくつかの方法が考えられると思います。たとえば、取得できる最良のリターンが主要都市である場合、緯度/経度のリストでその都市を検索し、それに基づいて最も近いサーバーを計算できます。

于 2009-06-24T20:03:43.363 に答える
0

更新: 元の投稿の最後に商用ソリューションに関する免責事項がありませんでした。これは、興味のある人のために残しておきます。

--

http://ultradns.com/をご覧ください。 このようなマネージド DNS サービスは、探しているものを達成するために必要なものかもしれません。

Amazon.com、Forbes.com、Oracle、すべてそれらを使用しています...

http://ultradns.com/solutions/traffic.htmlからの引用:

UltraDNS トラフィック管理ソリューションは、IT 管理者が 1 つ以上の地理的な場所に存在するコンテンツ サーバーの負荷分散構成を定義できるようにする一連のツールを提供します。Traffic Management Solution は、DNS 要求への応答を動的に変更することで、サーバーに向けられたトラフィックを管理します。ロード バランシングは、継続的な監視に基づいてホスト サーバーから取得した動的メトリックに基づいて実行されます。UltraDNS トラフィック管理ソリューションは、単一のアプリケーションではなく、複数の既存の UltraDNS システムの機能を組み合わせて、トラフィックを制御し、サイト障害を管理し、Web コンテンツ システムを最適化します。

于 2009-06-24T19:50:13.250 に答える
0

簡単な方法の 1 つは、UDP DNS 要求に含まれる IP アドレスの最初のバイト (クラス A) を確認し、地理的に配置された適切な IP を配信できるかどうかを判断することです。

于 2009-06-24T19:47:46.813 に答える
0

別のアプローチはもう少し複雑です。ユーザーに地理的に最も近いサーバーを使用する代わりに、そのユーザーの待ち時間が最も短いサーバーを使用できます。

待ち時間が短いほど転送速度が速くなり、地理的な場所よりも計算が容易になります。

詳細については、CDN に関する次の記事をご覧ください (技術セクションに注意してください)。

コンテンツ配信ネットワーク - ウィキペディア

これらは、大規模なサイトがコンテンツをネット上で配布するために使用する種類のネットワークです (Akamai は一般的な例です)。ご覧のとおり、独自の独自プロトコルを持つ CDN などでは、物事がかなり複雑になる可能性があります。

于 2009-06-24T19:49:25.983 に答える