0

連絡先を SQL データベースに保存する独自のアプリケーションがあります。アプリケーションの各ユーザーが、自分のコンピューターと電話の両方と同期される自分専用の連絡先リストを持つことができるように、クラウドで起動して実行するには、どのようなことが必要なのでしょうか?

この点に関して、Azure のコストを把握しようとしていますが、具体的なシナリオよりも抽象的な話が見つかりました。

1,000 人のユーザーがいて、各ユーザーには 1,000 の連絡先があり、連絡先帳に保存されているとします。どのユーザーも、他のユーザーが設定した連絡先を見ることはできません。ユーザーが連絡先情報を変更するたびに、同期が発生する必要があります。

ありがとう。

4

1 に答える 1

1

Windows Azure クラウド プラットフォームは、Dropbox などの消費者向けサービスと直接競合することを意図していませんが、それを行うアプリケーションを構築するためのプラットフォームとして意図されていることは確かです。したがって、特定のユース ケースは Windows Azure に適しています。連絡先の同期、多数のユーザー間でのスケーラブル、保持するデータ量のスケーラブルなどを維持するためのサービスを作成します。

ソリューションをマルチテナント対応にすること (@BrentDaCodeMonkey からのコメントによる) は、コスト効率の鍵です。データのニーズは、1,000 ユーザー x 1,000 の連絡先/ユーザー = 1,000,000 の連絡先です。各連絡先が約 1KB の場合、約 1GB のストレージについて話していることになります。

価格計算ツールを確認すると、保存時のストレージ コストは、1 GB の Windows Azure SQL データベース インスタンスで月額 9.99 ドルです (2 GB までの場合は 13.99 ドルなど - 追加の予測と現在の価格については、計算ツールを参照してください)。 .

次に、データ転送 (帯域幅) の料金がかかります。ただし、料金計算ツールには「請求月ごとの最初の 5 GB のアウトバウンド データ転送も無料」と記載されているため、同期が適度にスマートであると仮定すると、現在のユーザーにはおそらく費用はかかりません。

これには、アプリケーションの費用は含まれません。あなたのアプリケーションは何ですか、どのように動作しますか? クライアント側のコンポーネントがあると仮定すると、(通常) このコンポーネントは、データベース接続を持つことを信頼できません。したがって、これには、データベースのゲートキーパーとして機能するサーバー側コンポーネントを実行する必要があります。(また、通常、データベースをすべての IP アドレスに公開することはありません。これは、サーバー側コンポーネントを介してデータをチャネリングするもう 1 つの動機です。) このコンポーネントの運用にも費用がかかります。コストは料金計算ツールにも表示されますが、無料の Windows Azure Web サイトを使用することを選択した場合. 優れたアプローチは、気の利いた ASP.NET Web APIかもしれません最近リリースされたスタック。Web API を使用すると、クライアント アプリケーションが安全にアクセスできる優れた REST API を実装できます。Windows Azure Web サイトは、Web API エンドポイントをホストできます。「予約済みインスタンス」機能もチェックしてください。

私は Windows Azure Web サイトから始めましたが、私のサービスが複雑化/高度化したので、(サーバー側コンポーネントを構築するためのより高度なアプローチとして) Windows Azure クラウド サービスを調べてみました。

于 2012-09-04T17:36:14.883 に答える