2

WCF サービスを使用している winforms アプリケーションがあります。これまでのところ、WCF サービスはローカル PC 上の自己ホスト型サービスです。いくつかのインターフェイスが含まれています (プログラムの機能ごとに 1 つ)。改善として、サービスをインターネットに公開したいので、新しいモバイル アプリを使用して呼び出すことができます。これは、ルーター/ファイアウォールを構成し、ある種の動的 DNS を使用するか、IP アドレスを覚えておくことで簡単に実行できます (最悪の場合)。

次のステップでは、winforms アプリを複数の場所 (顧客と呼びます) に配布し、ローカルの WCF サービスとモバイル アプリを併用します。顧客が wcf サービスに (モバイル アプリを使用して) 接続できるようにするために、顧客ごとに動的な dns を設定できますが、そうしたくありません。まず第一に、最高の dyndns サービスは無料ではないか、定期的に更新する必要があります。次に、顧客に独自の dns サービスを提供して、顧客の wcf 呼び出しを顧客のローカル サービスに「転送」できるようにしたいと考えています。wcfdnsrouter は、顧客の IP アドレスが ip-updater で提供されるパブリック Web ホストに配置する必要があります (他の dyndns サービスではよくあることです)。

例として、これを想像してください:

顧客A; IP1; エンドポイント: http://wcfdnsrouter.com/A

顧客B; IP2; エンドポイント: http://wcfdnsrouter.com/B

wcfdnsrouter.com/ AがすべてのコールをIP1に転送 (またはルーティング) し 、wcfdnsrouter.com/ BがすべてのコールをIP2に転送 (またはルーティング) するようにしたい場合

このシナリオでは、顧客は世界中のあらゆる場所からモバイル アプリを使用してサービスにアクセスできます。お客様のサイトでのハードウェア構成は問題ありません。

目標は、顧客ごとに別の URL を持つのではなく、パラメーターを使用することです。これにより、構成が削減され、サービスの重複が回避されます。ただし、これはまだオープン トレースです (この場合、サブドメインを作成し、通常のルーティング サービスに過ぎない wcfdnsrouter をコピーする必要があります)。

そのため、エントリ ポイントは、メッセージを別の IP アドレス\サービスにルーティングするレストフル サービスのようです。ルーティングサービスについてはすでにいくつか調査しましたが、思い通りにはいかないと思います。すべてのインターフェースを変更して条件を設定したくないので、コンテンツベースのルーティングはオプションではありません。restfull サービスのパラメーターと、呼び出す必要のある IP アドレス (つまり、別のサービス) との間のリンクを作成する方法がわかりません。

現時点では、セキュリティは実際には問題ではありません。

この質問は (無料の) DNS サービスに関するものではないことに注意してください。自分で作るのが目的です。新しい顧客をアクティブ化するには、auto-ip-updater をインストールして、例にあるコード (A や B など) を割り当てるだけで十分です。

その方法についてアドバイスが必要です。多分私はルーティングについて考えている間違った道を進んでいますか?多分私がミスする非常に簡単な方法がありますか?

前もって感謝します!

4

0 に答える 0