実際、ロード バランシングを実装するためのソリューションがいくつかあります。
- DNS ラウンドロビン
- DNS 負荷分散 (lbnamed を使用)
- プロキシ ラウンドロビン
- ハードウェア/TCP ラウンドロビン
1) と 2) はここではオプションではないことを理解しました... お金があり、本当に高いパフォーマンスが必要な場合は、4) を選択してください。それ以外の場合は、3) に進みます。
Proxy Round-Robin の場合も、Apache mod_rewrite、Apache mod_proxy、Squid (そして、私が知らない他の多くのソリューション) など、いくつかのソリューションが可能です。
「愚かな」負荷分散については、Apache mod_rewrite のURL Rewriting Guide に例があります(プロキシ スループット ラウンド ロビンのセクションを参照)。
Apache mod_proxy はクライアントをインターネットに接続するためのプロキシとして機能しますが、通常は URL を別のサーバーにリダイレクトするためのリバース プロキシとして使用されます。キャッシュ機能はありません (ただし、mod_cache および mod_rewrite で使用できます...)。
Squid はプロキシ キャッシュであり、通常はクライアントをインターネットに接続するために使用されます。ただし、リバース プロキシとして使用して、要求をキャッシュし、コンテンツ配信を高速化するように構成することもできます。
ご覧のとおり、それらのいずれかを選択することは、何をどのようにプロキシするかによって異なります。あなたの場合、Linuxでキャッシングが必要な場合は、Apache mod_proxyまたはSquidを実行することを検討します(オプションの場合)。
ハードウェアに関しては、私は専門家ではありませんが、「小規模」から「中規模」の専用サーバーで十分だと思います。すべてのリクエストがこのマシンを通過することを忘れないでください。そのため、そのサイジングはトラフィックに大きく依存しますが、これはまともなようです。これには、実際のデータを掘り下げる必要があるかもしれません。