web-dev-qa-db-ja.com

node.jsが共有ホスティングで実行できないのはなぜですか?

最初に: nodejsの共有ホスティングについて、既知のすべてのWebホスティング会社を検索しましたが、誰も見つかりませんでした。その後、nodejsが共有ホストシステムで実行できないことを知りました。なぜ知りたいですか?

2番目:私は通常の予算で普通の人です。 vps、専用サーバー、クラウドホスティングのいずれかを選択するとノードが実行されますが、PHP共有ホスティングサービスと比較して、お小遣いの範囲外なので、node.jsを学習する必要がありますか?

57
Yousuf Memon

理論的には可能ですが、実際には、ホスティングプロバイダーに依存して、このようなインフラストラクチャを整備します。

従来のWebプラットフォームと比較したノードは、自立可能なプラットフォームです。 PHP(たとえば)の場合、Apacheまたはnginx(またはその他)で実行され、PHPそれ自体は単なるスクリプト言語です。ロジックの実装をあまり行わず、Webサーバーソリューションを必要とする一部のライブラリ。Webサーバーは、トラフィックを特定のポートでリッスンするソケットを作成し、独自のマジックを実行し、リクエストを処理するためにPHP 。

その間、node.jsは独自のソケットを作成し、独自のポートにバインドします。これにより、はるかに低レベルのアクセスが可能になるため、Webサーバー自体になります。 1つのポートに2つのアプリケーションをバインドできないため、既に共有できません。
node.jsプロセスにトラフィックをルーティングするプロキシを作成できるサービス(Webサーバー)がありますが、場合によっては効率的ではなく、共有ホスティングではそのような機能が提供されません。

Node.jsはまだかなり新しいだけでなく、かなり異なっているため、共有ホスティングサービスの大半にはまだヒットしていません。 node.jsアプリケーションを「共有」方式でホストするために、オンラインで利用可能なサービスがいくつかあります。

さらに、AWSでEC2 Microインスタンスを1年間無料で(無料利用枠)レンタルすることができます。これにより、さまざまなものを試してみる十分な可能性と時間が与えられます。ほぼ専用のシステムが得られます。そこでは、ほとんどすべて(ソフトウェアのインストール、OS構成の変更など)を行うことができますが、共有ホスティングではそれができません。

26
moka

Herokuを調べてください。シンプルなトラフィックの少ないアプリの場合、それらは無料で、より多くのトラフィックに簡単に拡張できます(追加費用がかかります)。さらに、Gitを使用してデプロイするため、更新が非常に簡単です...

11
Ed.

Node.jsアプリをデプロイする方法は他にもあります。

OpenshiftHerokAppFogPaastordotCloud などのPaaSサービスを使用できます=など.

10
jh314

その他の優れたノードアプリホスティングオプションには、JoyentのSmartOSおよびMicrosoft Azureが含まれます。両方とも無料試用期間があります。

Windows Server、Ubuntu Linux、またはAzureの特別な「Webサイト」共有展開スキームでノードアプリをホストできるため、Azureはnode.jsの優れた学習プラットフォームになります。

http://www.windowsazure.com/en-us/develop/nodejs/tutorials/create-a-website-(mac)/

ノードアプリホスティングのもう1つのコスト効果の高いソリューションは、Azureの「Webサイト」アプローチで、1か月あたり約10ドルです。欠点は、IISを介してノードアプリをホストする共有環境を使用する必要があることです。実際には、これはうまく機能しましたが、Windowsで実行しているときにNodeから特定のLinux関数を使用できないという制限があり、ノードサービスを構成する方法は学習しません自分にとって重要な場合とそうでない場合があります。 (注:ローカルGITリポジトリからアプリを展開する場合、AzureのGIT展開プロセスは非常に効果的です。NodeIISは、一定期間使用されていないノードアプリを停止し、アプリのリクエストが届きます。)

JoyentのSmartOSプラットフォームは、node.jsアプリをホストするために最適化されたLinux OSです。優れた信頼性とパフォーマンス、優れた診断ツールを備えています。

http://wiki.joyent.com/wiki/display/jpc2/Developing+a+Node.js+Application

私がこれまでに見つけた最も費用対効果の高いソリューションはDigitalOceanです。これは、完全なLinux VMをわずか月額5ドルでホストできる優れた新しいホスティングソリューションです。これまでNodeアプリをホストできたのは幸運でした: https://www.digitalocean.com/pricing

4
Svbaker

ノードはほとんどのサーバーのように機能しません。 IISとApacheでは、複数のサイトを実行する1つのサーバーがあり、共有環境に適しています。Nodeでは、独自のサーバーを実行しているため、代わりにマシン上のリソースを共有します。

私はあなたの動機がわからないため、ノードを学習する価値があるかどうかはわかりませんが、そこに行き、スキルセットを拡大することを選択した場合、キャリアの機会を広げることができます。

低価格帯のホスティングオプションをいくつかご紹介します。

http://nodester.com/

https://www.nodejitsu.com/

4
Thinking Sites

a2hostingは共有ホスティングでNode.jsを許可しますが、経験はありません。ウェブ検索で発見

更新:DigitalOceanを使用します。プライベートVPS

3
user2473015