node.jsはサーバーサイドで動作するJavaScriptの実行環境のことです。
本記事では、node.jsの基本的な特徴とアプリケーションをインターネットで公開(ホスティング)するために必要なサーバー環境について解説します。
node.jsはサーバーサイドのJavaScript実行環境
node.jsは先述の通り、JavaScriptをサーバーサイドで実行することを指しており、いわゆるいわゆるプラットホーム(実行環境)です。
JavaScriptはもともとブラウザ上で動作することを目的に開発された言語で、パソコンやスマートフォンなどのクライアントサイドでアニメーションなどを含んだ動的なコンテンツを実現するために使われています。
node.jsはPHPやJavaなどと同じようにサーバー上でJavaScriptを実行することができます。クライアントサイドと同じ技術でサーバーサイドのプログラミングができるため、新規の学習コストが低く近年急速に普及が進んでいます。
他のサーバーサイドプログラムに比べてnode.jsが優れているとされている点をまとめます。
- リアルタイム性が高いため、チャットサービスなど応答をリアルタイムに返すようなプログラムに適している
- シングルスレッドで非同期に処理を実行できるため、多数のユーザーが同時多発的にアクセスしてくるようなサービスに適している
- フレームワークやライブラリパッケージが充実している
具体的な例をあげると、TwitterなどのSNSや動画配信サービス、スマホアプリなどのWebアプリケーションの構築に適しています。
node.jsに適したサーバー環境は3通りある
node.jsで作成したWebアプリケーションをインターネット上で公開するには、24時間365日稼働するサーバーを用意する必要があります。
サーバーを用意する方法として、一般的に3通りの方法が考えられます。
- 専用のサーバー機器を購入するなどして、自社・自宅にサーバーを設置する
- 専用のサーバー機器を購入し、ハウジングサービスを利用してデーターセンターにサーバーを設置する
- VPS(仮想専用サーバー)やクラウド(PaaS/IaaS/SaaS)などのホスティングサービスを利用する
サーバーに転用できる機器があれば、自社・自宅にサーバーを設置する方法がもっとも手軽にnode.js環境を構築できますが、24時間365日稼働する場合は電気代などのランニングコストが発生します。また、セキュリティの確保や停電時のバックアップなど、安定したサービスを提供するためにある程度の資金と知識が必要です。
また、ハウジングサービスを利用してデーターセンターにサーバーを預けることもできますが、こちらは専門業者にサーバーの管理・運用を委託することになるため、初期費用とランニングコストがそれなりにかかります。
一方で、VPSやPaaS、IaaSなどのクラウドサービスはサーバーの一部だけを借りることができるため、専用サーバーに比べて少ないコストでnode.js環境を運用することができます。
専用サーバーに比べるとCPU性能やメモリリソースに制限はありますが、サービスの規模に応じて段階的にサーバー性能を強化することもできるため柔軟な運用ができます。
近年AWSなどのホスティングサービスを利用して商用サービスを運用したり、社内のイントラサイトを構築することは一般的になっており、必ずしも専用サーバーを利用する必要はありません。
サーバー維持にかかる費用と実現したいことを天秤にかけて、より適切なプランを検討する必要があります。
node.jsに対応したVPS
VPS(バーチャル・プライベート・サーバー)は、仮想的ながらサーバーを1台丸ごと借りることができるため、node.js環境も自由に構築することができます。
さくらのVPSは個人・法人を問わずよく使われています。また、GMOクラウドVPSやKAGOYA CLOUD/2も法人用途で定評があり、簡単にnode.js環境を構築することができます。
さくらのVPS
初期費用 (+税) | 月額料金 (+税) | 種類 |
1,000円 ~ | 582円 ~ | VPS |
無料お試し期間 | ディスク容量 | 対応OS |
14日間 | 20GB ~ | CentOS6, CnetOS7, Ubuntu14.04 など |
さくらのVPSは、月額582円という価格設定のため、個人ユーザーでも気軽にVPSです。
インストールできるOSもCentOS、UbuntuなどのLinux系が一通り揃っており、node.jsを実行するための環境を簡単に構築することが出できます。
共用サーバーと異なりセキュリティ対策などはすべて自分で行わなければならないため、作成したアプリケーションをインターネット上に公開する場合は十分注意が必要です。
-
さくらのVPS
おすすめ度 100% さくらのVPSは、さくらインターネット株式会社が運営しているVPSサーバーです。 月額582円という個人でも借りやすい手頃な料金設定ながら、CentOS、Ubuntu、FreeB ...
続きを見る
クラウドVPS by GMO(旧GMOクラウド VPS)
初期費用 (+税) | 月額料金 (+税) | 種類 |
4,000円 | 780円 ~ | VPS |
無料お試し期間 | ディスク容量 | 対応OS |
15日間 | 50GB | CentOS, Ubuntu, Windows Server など |
クラウドVPS by GMOは、GMOクラウド株式会社が運営する高性能・高品質なVPSです。
月額780円からとコストパフォーマンスに優れた料金設定ながら、Linux系OSが一通り揃っています。
さくらのVPSに対して価格面では劣るものの、SLAがある点やサポート体制が充実している点、CPUやメモリのスペックが高い点で優ります。
また、サーバーを管理するための多機能コントロール パネル「Plesk」を使うことができるため、メリットを感じる場合は、クラウドVPS by GMOを選ぶとよいでしょう。
-
クラウドVPS byGMO(旧GMOクラウド VPS)
おすすめ度 80% GMOクラウド VPSは、GMOクラウド株式会社が運営する高性能・高品質なVPS(仮想専用サーバー)です。 月額842円からとコストパフォーマンスに優れた料金設定ながら、Linux ...
続きを見る
KAGOYA CLOUD/2
初期費用 (+税) | 月額料金 (+税) | 種類 |
0円 | 600円 ~ | VPS |
無料お試し期間 | ディスク容量 | 対応OS |
なし | 20GB ~ | CentOS, Fedora, Ubuntu, Windows Server など |
KAGOYA CLOUD/2は、レンタルサーバーでおなじみのKAGOYAが提供しているVPSです。
初期費用無料で月額648円からサービスを利用することができ、KVMとOpenVZの2つの仮想基盤を選択できる点が特徴的です。
OSテンプレートも豊富でCentOS、Fedora、Ubuntuの他、Ghost、LAMP、LEMPと言ったサーバー環境のセットも用意されています。
また、KAGOYAサーバーと同様にすべてのプランで24時間365日メールサポートがついており、時間帯は限られますが電話サポートも利用することができます。
node.jsに対応したクラウドサービス
PaaS/IaaSなどに代表されるクラウドサービスは、サービス規模に合わせて柔軟にプランを変更して拡張していける点が魅力です。
基本的な特性はVPSと変わりませんが、ユーザーの反応を見るためのテストサイトから始めて将来的に規模を拡張したり、急なアクセス負荷があるサービスを運用するのであれば、クラウドサービスがおすすめです。
近年ではサーバーの環境構築・保守をレンタルサーバー会社が行いながらクラウドの利点である柔軟な拡張性をもたせた「マネージドクラウド」も人気があります。例としては、レンタルサーバーでお馴染みのロリポップ!から派生したロリポップ!マネージドクラウドなどが挙げられます。