NodeJS マネージドホスティング vs VPS [closed] 質問する

NodeJS マネージドホスティング vs VPS [closed] 質問する

Node.js向けのマネージドクラウドベースのホスティングサービスが多数ありますそこにこれらは比較的新しいようで、まだベータ版のものもあります。

Node.js アプリをホストするもう 1 つの方法は、Linode などの VPS 上にスタックを設定することです。

これら 2 種類の展開の基本的な違いは何でしょうか。どちらかを選択する際に考慮すべき要素は何でしょうか。

これらのサービスがまだ新しいことを考慮すると、どちらが本番環境に適しているでしょうか。

明確に言うと、私はプロバイダーの選択について尋ねているのではなく、管理された Node.js 固有のホスティングでホストするか、昔ながらのセルフセットアップ VPS でホストするかを決定することを尋ねています。

ベストアンサー1

いずれかのサービスを使用すると、ほとんどの場合、手間がかかりません。コードを記述し、ボックスの管理、プロセスの維持、公開チャネルの作成、OS のパッチ適用などをサービスに任せることができます。

対照的に、独自の VM を使用すると、より多くの制御が可能になりますが、初期投資と継続的な時間投資が増えます。

もう 1 つの考慮事項は、一部のホスティング会社やクラウド プロバイダーが、独自のテクノロジや独自のテクノロジを提供していることです。それらには理由があり、価値がありますが、クラウド プロバイダーを切り替える場合は、コードやデプロイメント スクリプトなどを書き直す必要がある可能性があります。一方、標準 OS をベースラインとして VM を使用することは、非常に一般的です。VM の構成を自動化/スクリプト化/文書化して、コードが一般的なままであれば、選択肢は広がります。独自のクラウド テクノロジに依存する場合は、インターフェイスの背後に抽象化して、分離されたコンポーネントにして、コード全体に散らばらないようにするのがよいでしょう。

私は両方経験しました。最近 VM パスを受講したのは、主に学習体験がしたかったからです。次のことをする必要がありました。

  • クラウドプロバイダーからVMを取得する
  • OSをアップデートしてパッチを当てる必要があった
  • 公開チャネルとしてgitをインストールして設定する必要がありました
  • スクリプトをいくつか書いて、foreverのような機能を使って動作させ続けなければならなかった
  • 複数のサイトを実行できるようにするには、リバース http プロキシを構成する必要がありました。
  • クラウド プロバイダーで DNS を構成し、git 用のポートを開くなどする必要がありました。

リストはまだまだ続きます。結局、コーディングをしない方が初期費用はかかりますが、より多くのことを学びました。これらがあなたにとって重要なら、ぜひ試してみてください。コードの作成に集中したい場合は、ノード ホスティング プロバイダーが適しているかもしれません。

最後に、さらにオプションも追加されました。2 番目のサイトを追加したいと考えました。リバース プロキシにエントリを追加し、別のアプリを永久に起動するスクリプトを追加すると、別のサイトが作成されました。制御が強化されました。その後、MongoDB を試してみたくなりました。簡単にインストールできました。

コスト的にはほぼ同じですが、データベースなどの他の多くのパッケージを使用して複数のサイトをホストし始めると、VM はより安価になり始めます。

Nodejitsuがオープンソース化彼らのツールを使えば、自分でやる場合にも簡単になります。

自分で行う場合は、次のリンクが役立つかもしれません:

サーバーの稼働を維持する:

https://github.com/nodejitsu/forever/

http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever

https://github.com/bryanmacfarlane/svchost

Upstart と Monit は監視を通じて自動的に起動および再起動します。

http://howtonode.org/deploying-node-upstart-monit

クラスターノードはコアごとに1つのプロセスを実行します

クラスタ

リバースプロキシ

https://github.com/nodejitsu/node-http-proxy

Node.js の Node.js ドキュメントを参照してください。

http://blog.nodejitsu.com/http-proxy-middlewares

https://github.com/nodejitsu/node-http-proxy/issues/168#issuecomment-3289492

http://blog.argteam.com/coding/hardening-node-js-for-production-part-2-using-nginx-to-avoid-node-js-load/

インストールのスクリプト

https://github.com/bryanmacfarlane/svcinstall

プロセス終了コードに基づいてシェルスクリプトを終了する

サイトの公開

Git を使用して Web サイトに公開する

おすすめ記事