0

簡単に言うと、バックエンドが別のサーバーから情報を照会するサーバーを作成する必要があります。他の人がこの問題にどのように取り組むのだろうかと思います。

問題の詳細は次のとおりです。クライアントから要求されたWebページに基づいて別のサーバー(このサーバーをOmegaと呼びます)に要求を行うサーバー(このサーバーをAlphaと呼びます)を作成する必要があります。要求はネットワークメッセージであり、SQLクエリではありません。要求された情報は、Alphaのクライアントに提供されるコンテンツの一部になります。たとえば、クライアントはバディリストを表示したい場合があります。AlphaはOmegaにクライアントのバディリストを問い合わせます。次に、Alphaはバディリストを含むWebページを表示します。

クライアントはOmegaに直接接続できません。サーバーAlphaは、ほとんどの場合、クライアント接続を処理し、クライアントからOmegaサーバーへのクエリを管理し、新しいWebページ(Omegaから照会された情報を含む可能性があります)を提供します。

私はWeb開発に不慣れです。Apacheモジュールについてはよくわかりません。しかし、ほとんどの機能はすでにApache内で利用可能になっているようです。他のサーバーであるOmegaから情報を照会するネットワークメッセージを送信するためにApacheを拡張できるようです。もう1つのオプションは、Alphaサーバーを最初から作成することです。

どのアプローチを使用しますか?より良い別のアプローチはありますか?

4

3 に答える 3

2

あなたがしていることについての詳細がなければ、これらのアプローチのどちらかはやり過ぎだと思われます。最新のWebプログラミング環境でバディリストクエリを実行している場合、次のようなことを検討します。

  • サーバーアルファは私の通常のWebスタックです:Apache、私のアプリサーバー(つまり、Passenger for Rails、またはJBoss for Javaなど)。
  • サーバーオメガは明らかにすでに存在しているので、私はそれに対処しません。存在しない場合は、Alphaのように構成された別のサーバーである可能性があります。

とすれば:

  • ユーザーからのWebリクエストは、wwwを介してAlphaに送信されます。
  • Alpha上の私のWebアプリは、適切なプロトコルを介してOmegaに接続します。これは、JabberサーバーやLDAPなどをクエリするためのXMPPである可能性があります。オメガはその結果を返します。
  • AlphaのWebアプリは、これらの結果を使用して、ユーザーに返すページを作成します。
于 2009-04-14T17:37:14.737 に答える
1

リバースプロキシまたはアプリケーションサーバーのいずれかが必要なようです。Omegaが実際に返すデータの種類については少し曖昧です。OmegaにWebページを生成させたい場合は、リバースプロキシを調べてください。Apacheにはプロキシモジュールが組み込まれていますが、Squidの方がパフォーマンスが優れていると聞いています。

AlphaとOmegaがカスタムプロトコルを使用している場合は、Omegaをアプリケーションサーバーとして扱います。

于 2009-04-14T17:34:38.520 に答える
1

その音からすると、これはごく普通のスクリプト化された Web ページによって提供されるようなシステムです。たとえば、PHP を使用すると、スクリプトはバックエンド Web サービスを呼び出し、情報を含む Web ページを生成します。どのくらいの処理が必要かは、Omega からの出力と、HTML をどのように表示したいかの違いによって異なります。

Apache モジュールは複雑すぎるようです。まったく新しいサーバーはやり過ぎです。

于 2009-04-14T17:37:34.877 に答える