私はサーバーサイドJavaScript(特にNode.js)を使用した最新の開発をフォローしており、PythonまたはJavaとは別に、または組み合わせて、このようなアプローチを使用してGoogle AppEngineWebアプリケーションを開発する可能性があるかどうか疑問に思っています。 ?
5 に答える
node.jsは、現在のAppEngineの設計にあまり適合しないイベントループモデルを使用しています。
ただし、JavaScriptをAppEngineに導入するプロジェクトはいくつかあります。いくつかの解決策については、 AppEngineの問題35をご覧ください。ハイライトは次のとおりです。Rhino 、Rhino For Webapps、Pythonが好きな場合は、AppengineJSをチェックしてください。また、 RingoJSは検討する価値があるかもしれないと聞きました。
また、ApeJSをチェックすることもできます。私が書いた小さなフレームワークはAppengineJSに似ていますが、よりミニマリストです。
Tornadoはアプリエンジンで実行でき、node.jsに似ていますが、Pythonを使用しており、優れたyieldアプローチも備えています。ただし、竜巻をアプリエンジンで使用することには制限があり、プロジェクトで竜巻を使用するという目的を損なう可能性があります。詳細については、githubのtornadoを参照してください。ただし、node.jsとconnect middelwareおよびexpress.jsの両方を使用して、ノードを単純なWebアプリで使いやすくしています。
今、最良のオプションは、Googleコンピューティングエンジンとデータストアを使用することです>ここにリンク
Google Compute Engineを使用してnode.jsアプリをホストし、 google-api-nodejs-clientを使用してデータストアに接続できます。
- Google API Consoleでプロジェクトを作成し、そのプロジェクトのComputeEngineサービスをアクティブ化する必要があります
- Google Cloud Datastore APIを有効にする必要があります(上記のリンクを参照)
- データセットID(Google CloudプロジェクトIDと同じ識別子)を設定する必要があります。
- datastoreスコープとuserinfo.emailスコープの両方を使用してComputeEngineインスタンスに接続する必要があります(証明書ベースのサービスアカウントのnode.jsサポートはまだ実装されていません)。
- ComputeEngineマシンにnode.js環境が機能している必要があります。
- npmは、管理コマンドラインツールにgoogle-api-nodejs-clientをインストールします
そして、あなたは行く準備ができているはずです
純粋なアプリエンジンと同じではありませんが(手動スケーリングなど、現在アルファ版のステータス)、これはAppengineマネージドVMを使用して可能になりました。
見る:
- AppengineNodeJSクイックスタートプロジェクト
- appengine-nodejsライブラリ
彼らはまた、グーグルクラウドプラットフォームで動作するためのNode.JSライブラリを発表しました。
- gcloud-nodeライブラリ