2016-09-08 6 views
0

私はサーバーと常時通信する必要があるモバイルプロジェクトを構築しており、いくつかの情報が必要です。私はローカルアプリケーションを構築する方法を知っていますが、これは初めてサーバー/認証サービスへの外部呼び出しを必要とするアプリケーションを構築しています。モバイルアプリケーション - 外部サーバーとの通信

私はどのように進めるべきか、どのサービス/サーバを使用するかを尋ねています。

私はどのタイプのサーバー/データベースが必要ですか? 私はAPIサービスが必要だと思っていますが、どのように選択/作成するのかは考えられません。

私はazureサービス/データベースを使用したいと思っていますが、私もそれに依存したくありません。私は、私がリクエストを送信し、後で別のホストにかなり簡単に移動できるサーバー/ dbとやりとりする自分のURLを持っています。

私はほとんどのWebサイトを開発していますが、私はphp/laravel + Mysqlに精通していますが、この場合、サーバーのバックエンドのためにlaravelアプリケーションを作成するのは大変です。

アプリはモバイル専用ですので、ウェブページを持っているとは思いません。データが保存される外部サーバー/データベース。

まず、認証サービスが必要です。各ユーザーは電話で登録し、外部のサーバー/データベースに保存します。次に、ログインする必要があるときに、電話機にログインの詳細を入力します。これにより、恒久的なサーバー/データベースに照会し、検証された場合、サーバーから詳細を取得します。

答えて

0

まず、必要なサーバー通信の種類を決定する必要があります。それはリアルタイムかつ一定していますか? WebSocketが必要になります。あなたがデータを送信したり取得したりする必要があるとき、それは爆発的なものですか?何らかの種類のWebサービス(REST、RPC、SOAP)が必要になります。次に、ユーザー負荷を評価する必要があります。そして最後に、あなたが持つ人的資源。

あなたの質問に基づいて、私はREST Webサービスが十分であると思います。

-関連リソースのすべてのグループに対してRESTサービスを作成することができます。例:/ user URLは、サインアップ、ログイン、ログアウト、およびユーザー更新操作を処理する必要があります。

- これらの操作のそれぞれについてメソッドを作成して処理します。次に、RESTサービス・クラスからメソッドを呼び出します。

- 使用しているユーザーとテクノロジの量に応じて、リクエストを処理するサーバーを作成するか、RESTプロジェクトをサーバー(たとえば、tomcat)にアップロードします。

- アプリを作成し、そこからRESTサービスを使用します。

これらのことを選択できる技術はたくさんあります。 PHPではRESTサービスを作成することができます。 JavaはサーバーとAndroidの両方のアプリケーションで同じコードを使用できるので、非常に良い選択です。 Node.Jsは、サーバーとNIOを必要としないので、あまりにも一般的です(ただし、javaはjettyを使用することも、マルチスレッドも使用できます)。 golangとscalaはどちらも優れたパフォーマンスを持っています(golangはもっと簡単に学べますが、外部Webサーバーを使用する必要はありません)。

これが役に立ちます。

0

モバイルアプリケーションの場合、他のテクノロジで使用する軽量でフレックスなので、REST(表現型の転送)が最適です。私はRESTとモバイルアプリとウェブアプリを含むプロジェクトを持っていて、とてもうまく機能していました。

0

このシナリオでは、通常、クライアント側のREST APIサービスを構築します。 Laravelに精通しているので、Laravelを使用してREST APIサービスを構築する方法については、http://www.programmableweb.com/news/how-to-build-restful-apis-using-php-and-laravel/how-to/2014/08/13#apiuを参照してください。また、他の軽い3番目のPHPフレームワークを活用してREST APIサービスを構築することもできます。

ローカルでアプリケーションを作成および開発してから、Azure Web Appsにデプロイすることができます。詳細はhttps://azure.microsoft.com/en-us/documentation/articles/app-service-web-php-get-started/を参照してください。

そしていくつかのベンダーがAzureにMySQLサービスを提供しています。 ClearDBはMySQL用AzureのBaaSです。また、VMを使用してMySQLサービスをホストすることもできます。例えば。 MySQL by BitnamiおよびMySQL by Docker

関連する問題