開発者向け解析サーバー移行ガイド

Parseホスティングサービスをモバイルアプリケーションのバックエンドとして使用した場合、Azure App Serviceを試すのに最適な時期です。 最新ニュースに関連して、Parseの担当者は既存のバックエンドをParseから他のサイトに移行する方法を提案しました。 このような代替プラットフォームを探し始めたら、Azureをお試しください。

簡単な移行パス


移行ガイドで提案されているように、Parse APIに基づくExpressサーバーがデプロイされている別のホストに、アプリケーションのParseバックエンドを移行できます。 Azure App Serviceは、Parseサーバー実装をホストするための優れた代替手段を提供します。 最終的に、Azure App Serviceのモバイルアプリによって提供されるNode.jsバックエンドもExpressです。 最初の手順をさらに簡素化するために、Azure App Serviceチームは、App Serviceで最初のParseサーバーを簡単に起動できる既製の展開プロセスを提案しました。

開始する前に、Parse移行ガイドを読んでサポートされるものと新しいParseサーバーに含まれないものを理解する必要があります。 Parseサーバーにない主な機能の1つはプッシュ通知ですが、Azure Notification Hubsサービスは既製の代替手段を提供します。

移行が完了したら、アプリケーションで引き続きクライアントParse SDKを使用してデータにアクセスできます(もちろん、クライアントはSDKの新しいバージョンを使用して新しいサービスの場所を使用するように更新する必要があります)。

始める前に


新しいAzureベースの解析サーバーの作成プロセスを開始する前に、次の手順を実行する必要があります。

Azureアカウントを作成する

Azureアカウントをまだお持ちでない場合は、サブスクライブする必要があります。 無料トライアル利用できます

MongoDBを構成する

Parseサーバーの現在の要件の1つは、MongoDBを使用することです(ParseはMongoDBの要件を満たすためのガイドを提供しています )。 Parseは、ホスティングからMongoDBにデータを転送するための移行ツールも提供します。 このオプションが適している場合、Parseチームは、 Azure Marketplaceから簡単にサブスクライブできる完全に管理されたクラウドデータベースサービスであるMongoLabから始めることをお勧めします。 MongoDBサーバーをホストするために選択したものは何でも、Parseサーバーを起動するための接続情報が必要です。

将来的には、NoSQL駆動のドキュメント指向データベースサービスである組み込みのAzure DocumentDBサービスの使用を試すことができます。 次の投稿では、データをDocumentDBに移行し、ParseサーバーでDocumentDBを使用する方法の詳細を明らかにします。

GitHubアカウントを取得する

この記事で説明されているAzureへの移行パスを使用するには、 GitHubアカウントが必要です。 Gitリポジトリのクローンを作成し、変更を送信して確認する方法を理解することも役立ちます。

新しいApp Serviceバックエンドの作成


最初のステップは、ParseサーバーをホストするApp Serviceで新しいバックエンドを作成することです。 Azureポータルで、[ +新規 ]> [ Web +モバイル] > [ Webアプリ ]をクリックし、バックエンドの一意の名前を入力して、[ 作成 ]をクリックします



この手順により、Parseサーバーをホストする新しいバックエンドサービスインスタンスが作成されます。 この手順の前に、サービスの価格に影響する独自のApp Service支払いプランの作成に興味があるかもしれません。 今後、いつでもApp Serviceプランを変更できます。 詳細については、App Serviceプランの詳細な概要をご覧ください。

サービスインスタンスの展開が完了すると、バックエンドを管理するためのパネルが表示されます。



App Serviceには、アプリケーションをホストする方法がいくつかあります。 次に、Parseサーバーリポジトリから展開を構成する必要があります。

Azureでのサーバーリポジトリのクローンと展開の解析


解析サーバーをAzureに発行するプロセスを簡素化するために、App Serviceチームはサンプルの解析サーバーでリポジトリを分岐し、App Serviceで正常に動作するカスタマイズされたサーバーを作成しました。 GitHubで、アカウントにサンプルParseサーバーを含むリポジトリをフォークします



このフォークをソースとして使用して、バックエンドをデプロイします。 バックエンドの[設定]パネルに戻り、下に移動して[ 継続的な展開 ]> [ ソースの選択 ]> [ GitHub ]をクリックし、[ 承認 ]> [ 承認 ]をクリックします。



ポータルがGitHubアカウントに接続されたので、fork parse-server-exampleをプロジェクトとして選択し、 masterブランチを選択して[ OK ]をクリックします。



その後、展開が完了し、GitHubのプロジェクトからParseサーバーコードが取得され、Azureに公開されます。 何らかの理由で展開が自動的に開始されない場合は、[ 展開 ]パネルの[ 同期 ]ボタンをクリックして、手動で同期を開始できます

バックエンド構成


Parseサーバーには、環境変数として最も適切に伝えられる特定のデータセットが必要で、App Serviceのアプリ設定として使用できます。 このデータには、MongoDBへの接続に関する情報と、アプリケーションIDとマスターキーの値が含まれます。 アプリの設定を使用すると、この重要な情報が保護されずに公開リポジトリに誤って配置される可能性があるため、コードに残らないため、セキュリティレベルが向上します。 [設定]パネルで新しいアプリ設定を作成するには、[ アプリケーション設定 ]をクリックし、[ アプリ設定]セクションに移動して、次の設定の新しいキー/値ペアを作成し、[ 保存 ]をクリックします
キー
価値
DATABASE_URIMongoDB接続文字列
PARSE_APP_IDID ParseアプリID
PARSE_MASTER_KEYParseマスターキー


その後、RESTクライアントを使用してParseサーバーにアクセスできるようになります。 ParseサーバーでFacebookアプリIDなどの他の定義済みの値が必要な場合は、アプリの設定でこれらの値を有効にできます。

こんにちは、世界をお試しください!


Parseサーバーデモプロジェクトには、curlで呼び出すことができるhello関数が含まれています。

$ curl -X POST \ > -H "X-Parse-Application-Id: dsXH3syuEuuIZvXi1niEtX49LLilneJK5oIBcLM3" \ > -H "Content-Type: application/json" \ > -d '{}' \ > http://parse-on-azure.azurewebsites.net/parse/functions/hello 

Parseを使用する開発者にとっては、これはおなじみのはずです。 ただし、今回は、サーバーからの応答がまったく異なります。

{「結果」:「Azureからこんにちは。」}

ParseサーバーがAzureで正常に動作していることを確認したら、クラウドコードをバックエンドに追加します。

Parseクラウドコードを追加する


これで、Parseサーバーのフォークの継続的な展開を構成したので、クラウドコードをバックエンドに追加する最も簡単な方法は、このリポジトリを使用することです。

バックエンドにコードを追加するには、GitクライアントまたはGitBushなどのコマンドラインツールを使用して、Parseサーバーのフォークをローカルコンピューターに複製します。

オンプレミスのParse展開から、クラウドおよび/パブリックサブフォルダーを新しいローカルクローンにコピーします。 次に、変更をGitHubに追加、コミット(コミット)、プッシュ(プッシュ)します。 変更をGitHubに送信すると、Azureへの展開が自動的に開始されたことがわかります。 展開が完了したら、クラウドコードを使用できます。

現在のフォームでは、パブリックGitHubリポジトリを使用していることに注意してください。 コードをプライベートに保つには、プライベートリポジトリを複製するか、 別の展開方法を使用するように切り替える必要があります

クライアントアプリケーションでParse SDKを更新する


新しいParseサーバーと新しいホスティング環境では、モバイルアプリケーションで使用されるParse SDKを更新する必要があります。 ParseサーバーでのParse SDKの使用の記事の指示に従っていることを確認してください。

プッシュ通知はどうですか?


Parse移行ガイド読むと、次のことがわかります。
解析サーバーはプッシュ通知機能を実装していません。 他のプッシュプロバイダーへの移行をお勧めします。
パニックにならないでください。 Azureは、モバイルアプリのプッシュ通知専用に設計された、非常にスケーラブルなAzure Notification Hubsサービスを提供します。 Parseで行ったように、Notification Hubsは各プッシュ通知サービス(PNS)(AP​​NS、GCM、WNS、Kindle、Chrome、Baiduなど)の認証情報も保存します。 Node.jsのNotification Hubsライブラリを使用すると、クラウドコードまたは他のバックエンドサービスからプッシュ通知を簡単に送信できます。 近い将来、通知ハブを使用してParseサーバーから通知を送信するための詳細なガイドを提供します。

おわりに


ParseサーバーにAzure App Serviceクラウドサービスの使用を開始するには、Parseにない、またはParseにない機能を提供する他のAzureサービスを検討してください。 例:分析、スケジュールされたバックグラウンドタスク、TwilioやSendGridなどのサードパーティサービスとの統合。 App Serviceは、より多くの組み込み認証オプションも提供します。

Azureを使用してParseサーバーをホストすることをお楽しみください。 Parseからアプリケーションの新しいバックエンドホームに移行できたら幸いです。

Source: https://habr.com/ru/post/J276407/


All Articles