RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

Node.jsのExpressでWebサーバーの構築をしてみた

はじめまして、新卒のtaku_76です。

qiita.com

上記URLからチャットbotを作成したいと思ったのですが、これにNode.jsの知識が必要だと書いてあったので学習してみました。 その結果フレームワークであるExpressを使用すると簡単に Webサーバーが構築できることが分かったので試しに使ってみました。

Node.jsとは

JavaScriptを使ってサーバーサイドのコードを書くことが出来るプラットフォームです。

  • 特徴
    • V8エンジン

      • GoogleChromeで使われているJavaScriptエンジンでブラウザとほぼ同じJavaScriptが書くことができます。JavaScriptを即座にコンピュータが理解できる機械語に変換して処理を行うため非常に高速です。
    • ノンブロッキングI/Oモデル

      • I/Oが終わったか何度もチェックし、終わっていなければ次の処理に進んで、次の処理が終わったらまたチェックする、この動作を繰り返します。
      • シングルスレッドの大量のアクセス制御が難しいというデメリットを回避します。

Node.jsのインストール

https://github.com/nullivex/nodist/releases
こちらのURLからnodistをインストールします。

  • nodistとは

Windows環境で動作する Node.js のバージョン管理ツールです。これを使うことで、複数の Node.js のバージョンを切り替えて使い分けることができるようになります。また、同時にnpmもインストールされます。

  • npmとは

Node.jsのパッケージを管理するツールです。Node.jsのパッケージとは、予め用意された便利な機能をまとめたものです。

Expressで新規プロジェクトを作成

  • Expressとは

Node.jsで利用できるWebアプリケーションフレームワークです。 イベントループで非同期のため同時リクエストに強く、多くのユーザーの同時アクセス・大量リクエストを捌くことができます。 テンプレートエンジン(サーバーサイドで動的にオブジェクトを渡して、それをHTMLとして返す)を選べます。 今回はhtmlに近い形でかけるテンプレートエンジンのejsを使います。

  • Expressのインストール

以下のコマンドでインストールを行うことが出来ます。

C:\Users\takumi\Desktop\test\Nodist>npm install -g express-generator
  • 公開までの手順
C:\Users\takumi\Desktop\test\Nodist>express -e newproject

オプション-e でejsが設定された状態でプロジェクトが作成されます。

C:\Users\takumi\Desktop\test\Nodist>cd newproject && npm install

作成されたnewprojectのnode_moduleディレクトリの中に必要なモジュールがインストールされます。 packege.jsonに何をインストールするのか設定してあり、これを参照してインストールを行います。

C:\Users\takumi\Desktop\test\Nodist\newproject>npm start

サーバーを起動し、ローカルにWebページを公開します。 http://localhost:3000と入力するとexpressにデフォルトで入っているhtmlが以下のように表示されます。

f:id:taku_76:20190304065910p:plain
express

おわりに

今回は、Node.jsのExpressを使ってローカルにWebサーバーの構築をしてみました。 次は、自分でWebアプリを開発してherokuを用いて公開するところまでやってみたいと思います。

参考

Node.jsについての記事

こちらにも詳しい記事があります。 Node.jsの勉強会でお手軽にWebアプリを作った話

Copyright © RAKUS Co., Ltd. All rights reserved.