2

エンドユーザーのAzureアプリケーション用に1つのユーティリティ(スタートアップタスク)を構築しました。その起動タ​​スクは、REST API(東アジアでホスト)を介して、そのWebロールアプリケーション(エンドユーザーの選択に従って任意のリージョンでホスト)からデータベース(東アジアでホスト)にデータの一部を投稿します。

したがって、エンドユーザーが同じ地域(東アジア)でアプリケーションをホストしている場合、Azureは、エンドユーザーだけでなく私へのデータ転送にも費用はかかりません(間違っていると理解した場合は修正してください)。

別のケースでは、エンドユーザーが別のリージョンでアプリケーションをホストしている場合、エンドユーザーが別のリージョンにあるRESTAPIにデータを転送するのに費用がかかります。

このコストを削減するために私が行ったことは、すべてのリージョンにREST APIを設定し、起動タスクで、アプリケーションをデプロイするリージョンに応じて特定のRESTAPIのパスを設定するようにユーザーに指示することです。この場合、エンドユーザーはデータ転送に何の費用もかかりませんが、My REST API(別の地域でホストされている)はデータベース(東アジアでホストされている)にデータを転送するため、RESTAPIのホストと同様にコストがかかりますエンドユーザーのコストを削減するために、すべての地域で。

上記の場合、共有データベースを使用してコストを削減し、すべてのリージョンでホストされている複数のREST APIを削除する方法はありますか?また、エンドユーザーだけでなく私にとってもコストを削減するためのより良い解決策が存在するかどうかを提案してください。

4

3 に答える 3

1

興味深いシナリオ:基本的に、エンドユーザーが自分でアプリを選択した地域にデプロイしていますか?REST APIを介したデータベースアップロードの目的は何ですか:バックアップ、またはライブデータ用ですか?

私が理解していないことの1つは、共有データベースに関する質問です。あなたの説明から、各ユーザーがREST APIを介して東アジアの単一のデータベースにデータをプッシュしているため、すでに共有データベースがあります。これは正しくありませんか?

あなたが提供した情報に基づいて、すべてのデータが1つのデータセンターに送られますが、3つのオプションがあり、そのうち2つはすでに指摘しています。

  1. ユーザーは8つのデータセンターのいずれかでアプリをホストします。1つのデータセンターでRESTAPIをホストします。この場合、ユーザーはオンプレミスとアプリの間で最高のローカルアプリのパフォーマンスを取得し、ユーザーはAPIへの出力に対して料金を支払い、データセンター間でデータを転送するときにレイテンシーが発生する可能性があります。
  2. ユーザーは、8つのデータセンターのいずれかでアプリをホストします。すべてのデータセンターでRESTAPIをホストします。ユーザーのデータ転送はローカルRESTAPIに無料で、非常に高速です。ただし、その後、データを東アジアデータベースに転送します。これにより、ユーザーが東アジアでホストされていない場合、出力帯域幅が犠牲になります。また、多くの追加のRESTAPIインスタンスのコストが発生します。
  3. 東アジアでのみユーザーホストを使用し、RESTAPIとデータベースを使用します。すべてのデータセンター帯域幅は無料で高速です。ユーザーは、場所によっては、オンプレミスからアプリへの接続に遅延が発生する場合があります。

いずれの場合も、ユーザーが独自のホステッドサービスを展開し、ユーザーが自分のサービスと通信します。すべてのユーザーが同じホステッドサービスにアクセスするが、異なる資格情報を使用することで、ユーザーのコストを最適化することは可能ですか?

Windows Azureの稼働時間SLAを取得するには、各データセンターで少なくとも2つのインスタンスを実行する必要があることを考えると、コストとしては、すべてのデータセンターでRESTAPIをホストすることは多額の費用のように思われます。しかし...繰り返しになりますが、私はあなたのアプリのシナリオを正確に理解していません。

于 2012-05-25T11:09:29.320 に答える
0

この場合、お客様に独自のデータベースを提供してもらう方が良いと思います。独自のデータベースを使用する必要がある場合、コストを節約することは困難です。異なるデータセンターでホストされている複数のデータベースを使用できます。しかし、明らかにそれはより多くのコストを必要とします。単一のデータベースを使用することもできますが、その場合、一部のユーザーが別のデータセンターからデータを転送することは避けられません。ただし、製品の価格を上げることで、ユーザーに費用の支払いを求めることができます。ただし、ユーザーに独自のデータベースを提供するように依頼する方がよいようです(必要に応じて、オンプレミスデータベースを選択することもできます)。これは、ユーザーのデータが共有されないため、セキュリティの向上にも役立ちます。

よろしくお願いします、

明徐。

于 2012-05-29T08:48:59.813 に答える
0

私の理解に基づくと、シナリオは少し奇妙に思えます。エンドユーザーが独自のWindowsAzureアカウントを使用してホストできるパッケージを提供している場合、なぜエンドユーザーにも独自のデータベースを使用させるのでしょうか。それとも、サンプルとしてプロジェクトのソースコードをエンドユーザーに提供しているということですか?いずれにせよ、エンドユーザーに自分のデータベースアカウントを提供するように依頼する方が良いと思います。自分用のRESTAPIを設計する場合は、それを独自のWindowsAzureサービスでホストします。パッケージをエンドユーザーに配布しないでください。さらに、請求の詳細については、 https://support.microsoft.com/oas/default.aspx?prid = 14234&st = 1&wfxredirect = 1&sd=gnのカスタマーサポートに問い合わせることもできます。

よろしくお願いします、

明徐。

于 2012-05-28T11:11:03.953 に答える