概要
Node.jsによるAPI構築ついての備忘録です。
元々、XServerVPSにNode.jsによりランキング登録/取得APIを作成していましたが、他のアプリのAPIを追加もあり、全体の構成を見直し再構築及びリソース管理方法の変更を行いました。
合わせて、ローカル環境においてのデバック実行の方法なども調査し、実施してみます。
環境
サーバーサイド
- サーバー:XServerVPS
- OS:Ubuntu
- DB:MySQL
- APIランタイム:Node.js
- Webフレームワーク:Express.js
- Webサーバーソフト:Apache
ローカルサイド
- ソースエディタ:VSCode
- 仮想Webサーバー:Apache(XAMPP)
- DBサーバー:MySQL(XAMPP)
その他
- ソース管理:Git(GitHub)
Node.jsについて
Node.jsは、JavaScriptをサーバーサイドで実行できるようにするオープンソースの実行環境です。
JavaScriptといえばフロントエンドで使われるイメージですが、Node.jsはサーバーサイドのバックエンドでもJavaScriptが使えます。
メリットとては、フロントエンドでJavaScriptを使っている場合に言語の学習コストが下がることがメインでしょうか。
あとは、ノンブロッキングI/O方式っていうのを使っていて大量の同時接続を効率的に処理ができたり、ライブラリが豊富だったりします。
今回はフロントエンドでJavaScript(実際はTypeScript)を使用するAngularによるアプリ開発を行うため、学習コストを抑えるためにNode.jsでAPIを作ることにしました。
というか、AngularもNode.jsを使っています。
フロントエンドで動くJavaScriptをサーバーサイドで動かすためのNode.jsを使用してフロントエンドを動かすという、なんだかややっこしいことをやっていますが
・Node.jsはJavaScriptの実行環境なのでフロントエンドでもバックエンドでも実行可能
・Node.jsでは単にJavaScriptを使うより豊富なライブラリを使用できる
というのが理由かと思います。
Node.jsの基本構成
現行の構成

クルクルシューティングのランキング用APIがnode_modulesやpackage.jsonなどと同じ階層のディレクトリに格納


コメント