2016-05-08 4 views
1

Amazon DynamoDBでチュートリアルに従って、アンドロイドアプリケーションでデータをDynamoDBに書き込むようにしました。それは素晴らしい作品です。しかし、スレッドUsing Amazon RDS with android applicationを読んだ後、AndroidアプリケーションとDynamoDBの間にREST APIを置く必要があることが分かりました。私のアンドロイドアプリケーションをスケール(またはクラウド対応)する方法

ここでは、REST API(およびゲートウェイAPI)のドキュメントです。このようなAPIを使用した実例があります。これは、Androidアプリからのリクエストを受け入れることができるAWSのREST APIを構築するのに役立ちます。

+0

DynamoDBはRDSではありません。それらは2つの全く異なるサービスです。 –

+0

私はそれらが2つの異なるサービスであることに同意します。しかし、私の質問は異なっています – mobileDev

+0

あなたの質問(少なくとも最初の読書で)は、非連続で前提されているようです。 「DynamoDBを使用していますが、RDSにアクセスするにはREST APIが必要です」たぶんあなたは、そこに並行しているのを見て、直接の関係ではないと言っています。 –

答えて

0

古典的なアプローチでは、専用のAPIサーバーを使用して、何でも)をクライアント(あなたの場合はAndroidアプリ)に送信します。このAPIサーバーは、任意のプログラミング言語、この場合は.Netにすることができます。 APIサーバには通常、クライアントが呼び出すことができるAPIファサード、APIファサードから呼び出され、ビジネスロジックを含むサービスレイヤ、そして実際にDynamoDBまたは後にあるDBシステムを呼び出すデータアクセスレイヤが含まれています。これは、いくつかのAPIファサードを持つことができるので、合理的にきれいです。バックエンドシステム、インテグレーションシステムなどのために使用されます。実際のビジネスロジックが存在する場合は、サービスレイヤーに存在する必要があります。

インフラストラクチャに関しては、AWS Elastic BeanstalkでAPIサーバーを実行します。これにより、展開が大幅に簡素化されます。さまざまなAPIバージョンを処理できる必要があるため、APIを更新した後も異なるAPI呼び出しを使用する古いAndroidアプリは引き続き機能します。

実際のビジネスロジックがほとんどない単純なプロジェクトでは、これは過度のことかもしれません。 AmazonはAPI Gatewayを提供しており、これによりロジックをクライアントに公開することができ、DynamoDBにアクセスすることができます。どのように動作するかを見るために、HTTPエンドポイントのチュートリアルを試してみることをお勧めします。これを実行すると、API呼び出し専用のサーバーは必要なく、ゲートウェイを使用してすべてを処理でき、要求ごとに料金を支払うことができ、うまく拡張できるという利点があります。

技術的なアプローチを理解したら、まずクライアントとサーバーの間のインターフェイス(API)を定義することが理にかなっています。スタブメソッドを作成し、Androidとサーバーのロジック間で独立して作業することもできます。

関連する問題