web-dev-qa-db-ja.com

javascript node.jsがGoogle App Engineにないのはなぜですか

GoogleはV8 JavaScriptエンジンを作成しました。V8は、最初に実行されたときにJavaScriptソースコードを直接マシンコードにコンパイルします。

Node.jsはV8上に構築されています-なぜGoogleはMicrosoft AzureのようなNode.jsサーバーを提供しないのですか?

Google App EngineはNode.jsを置く自然な場所です。

Googleがそれをしていない理由を知っていますか?

70
Chris G.

2014年6月の時点で、Googleは Google App Engine(Google Compute Engineとは異なる) でカスタム言語の限定プレビューを行っていました。

App Engineとカスタムランタイムを使用したNode.jsアプリケーションのビルド を確認し、チェックアウト https://cloud.google.com/appengine/docs/managed-vms/

App Engineは、2番目のホスティングオプションであるManaged VMを提供するようになりました。 Managed VMホスティング環境では、設定可能なCompute Engine仮想マシン(VM)でApp Engineアプリケーションを実行できます。また、管理されたVMを使用して、ユーザー設定可能な カスタムランタイムNode.js およびその他のランタイムなど。

ベータ版に入る手順は次のとおりです。

サインアップして、Managed VMプロジェクトを作成します

管理対象VMは限定プレビューです。この機能へのアクセスにサインアップし、課金対応プロジェクトを作成し、管理対象VMで実行するようにホワイトリストに登録できるようにプロジェクトについてお知らせください。次の手順を実行します:

  1. 管理対象VMへのアクセスにサインアップします。
  2. App-engine-managed-vms Googleグループに参加して、Managed VMに関する議論に参加してください。
  3. プロジェクト(またはアプリ-それらは同じもの)は、米国のデータセンターにある必要があります。既存のプロジェクトの使用を計画している場合は、次の手順に進んでください。それ以外の場合は、米国のデータセンターで新しいアプリを作成します。 https://preview.appengine.google.com に移動して、新しいアプリを作成します。
  4. プロジェクトの課金を有効にします。ページにアクセスします https://cloud.google.com/console/project/apps~ 、ここでプロジェクトのIDです。左側のメニューで[設定]をクリックし、請求を有効にします。アプリがPremierアカウントで請求される場合は、app-engine-managed-vm-tt-id @ google.comにメールを送信して、同じアカウントで新しいCloudプロジェクトの請求を行ってください。
  5. 件名にアプリケーションIDを記載したメールを[email protected]に送信します。

メールを受け取ったら、舞台裏でいくつかのリソースを設定し、プロジェクトの準備ができたらメールで通知します。メールには、セットアップの最終手順が含まれています。これらの手順を実行中にエラーが発生した場合は、app-engine-managed-vm-tt-id @ google.comまでご連絡ください。

32
fernandopasik

Node.jsは、Googleの競合他社であるJoyentによって管理されています。

Node.jsはこれまでにGoogleとリンクしていませんが、実際にはGoogleが開始したオープンソースプロジェクトの上に構築されています。

GoogleはAzureと同じようにこのビジネスに飛び込んだかもしれませんが、すでに多くのPaaSがそれを行っているので、価値がないかもしれません。 GAEを使用したことはありませんが、他のPaaSとはまったく異なり、GAEライブラリを使用してコードを実行する必要があることを理解しています。

これは私の個人的な感覚ですが、実際にはNode.jsコミュニティが探しているものではありません。 Node.jsは、高速で軽量なアプリ(たとえば、電話アプリのAPIの大きなシェア)をすばやく作成するために使用されます。

それでも、Node.jsのPaaSを探している場合は、かなりの数があります。

  • Joyent (nodejitsu)
  • dotCloud これはWebSocketをサポートしています。
  • Windows Azure
  • Nodester (最近App Fogが購入)
  • Cloud Foundry ホストはNode.jsもサポートする必要があります。
  • などなど...

それらは私の頭の上の名前のほんの一部です。かなりありますが、それらは主要なものです。ああ Herok もありますが、Socket.IOベースのアプリにとっては残念なWebSocketをサポートしていません。

40
3on

Google Compute Engine(基本的には仮想コンピューター)にノードを簡単にインストールできます。リンクは次のとおりです。 https://developers.google.com/datastore/docs/getstarted/start_nodejs/

よろしくラース

23
user1700737

google AppEngineでの長年の経験の後、今は他のクラウドサービスに切り替えています。

google appengineは、実際にはクラウドコンピューティング業界の古いファッションサービスだと思います。新しいテクノロジーには時間がかかり、展開が難しく、APIを学ぶのに時間を浪費し、使用する言語に必要な多くの機能が不足しています。

googleの大規模なコミュニティに関係なく、Google AppEngineを使用することは誰にも勧めません。

[新しいpaas]

オープンシフト、appfog、heroku .etcの新しいpaasクラウドコンピューティングテクノロジーを使用することを強くお勧めします。 specificいプラットフォーム固有のAPIのないライブラリ。

[iaas]

実行中のos環境をさらに制御したい場合は、linode、Digital Ocean、Amazon、googleクラウドエンジン、Microsoft Azureなどiaasプロバイダーを試してみてください。

21
user655000

App Engineはサービスとしてのプラットフォームであり、新しい言語/スタックをGAEに追加するために、Googleは App Engineのサービスの過剰 とインターフェースする中間レベルのライブラリを作成する必要があります。

さらに、 すべてのApp Engineアプリはサンドボックス化されています であり、サンドボックス環境内から制限されたいくつかの機能があります。これは、サービスライブラリを作成する必要性に加えて、GoogleはGAEに導入しようとする言語/スタック用の保護されたサンドボックス環境を作成する必要があることを意味します。

個人的には、2番目の理由は、GoogleがAzureほど積極的な新しい言語/スタックのサポートを導入しない理由だと思います。ある意味では、App EngineはAzureよりも「管理」されており、新しい言語/スタックの初期開発コストが大きくなります。

13
Ibrahim Arief

背景:App Engine StandardとApp Engine Flexible

App EngineにはStandardとFlexibleの2つのバージョンがあるため、このトピックには多少の混乱があるようです。 NodeJSはApp Engine Flexibleでサポートされていますが、[〜#〜] not [〜#〜]on App Engine標準。 (違いのより完全な説明については here を参照してください)。

App Engine Standardは(Flexible環境の場合の数分ではなく)数秒でスケーリングし、無料の枠があるので、1ドルもかけずに開発とデモを行うことができます。これらの利点には、柔軟性が犠牲になります。 App Engine Standardは特定の言語とライブラリのみをサポートし、ディスクへの書き込みもSSHも許可しません。つまり、環境はstandardizedです。

回答:App Engine StandardでのNodeJSサポート

App EngineでのNodeJSサポートStandardに興味がある場合は、この問題にスターを付けてください: https://issuetracker.google.com/issues/67711509

Googleは、コミュニティから注目を集める機能に取り組んでいます( here を参照)。この機能に注意を向ける最良の方法は、上記にリンクされているGoogle Issueトラッカーで星を付けることです。

3
Trevor
3
crb

Node.jsは最近、Google Cloudユーザーのサポートを有効にしました。主なドキュメントページは次のとおりです。

現時点ではCompute Engineインスタンスが必要なようです。

3
Wernight

Googleは2016年3月21日に、Google App EngineのNode.jsがベータになることを発表しました: https://cloudplatform.googleblog.com/2016/03/Node.js-on-Google-App-Engine-goes -beta.html?m = 1

GoogleもNode.js Foundationに参加し、GoogleはChromeおよびNode.jsを駆動するV8 JavaScriptエンジンを開発しているため、これは予想されていました: https://nodejs.org/en/ blog/announcements/welcome-google /

Googleは同時にNodeSourceとのパートナーシップを発表しました。

1

Googleは、App EngineでのNode.jsのサポートを発表しました。

enter image description here 参照: https://cloud.google.com/nodejs/

Node.jsアプリをApp Engineにデプロイする方法 の例を次に示します。

1
Chankey Pathak

Googleはソフトウェア保守的な会社です。 JavaScriptでバックエンドをプログラミングすることは、Googleのマネージャーにとってはまったく想像できません。 Google自身が使用しないインフラストラクチャを作成することは、良い投資ではありません。参照: ミステリーマシンバスからのメモ

0
user7610