Next JS 0.7.2 リリースとマニュアルの下書き用に。

ども、コツツミです。

「あ”〜」だの「ぎゃ〜」だのいいながら作っているNext JSについてですw
マニュアルこれから書くので(笑)下書きもかねて、ちょっとメモっていこうかなとおもって、やっと重い腰を・・・。

Next JSってなんですか?

はい、よく聞かれますがw
node(Node JS)用の、アプリケーションサーバーです。
「んじゃ、アプリケーションサーバーってなにすんの?」ってことですが、nodeを使ったことのある人はわかると思いますが、Webサーバーは自作する必要があるんですね。
様々なミドルウェアもでてるので、ひっぱってきて自分で作れるっていうのが一つのおもしろさかな、と思います。
でも、「これから、アプリケーションをサーバーサイドJavaScriptでやろう!」と思っている人が、いきなり突きつけられるつらい現実の1つでもあると思います。

Next JSは、まず、Webサーバーとしての機能を提供します。

「じゃぁ、Webサーバーなの?Apacheみたいなもん?」

いいえ違います。
Next JSは、Node + Ext JS からNext JSという名前にしました。
Node上で、Ext JS 4のクラスアーキテクチャーと似たような記述ができるようにしたものです。
さらに、フレームワーク構造を取り入れ、開発を即座に開始できます。

ようするに、こいつ入れて起動すれば、「Apache + PHP + フレームワーク」みたいな状態をnodeで実現しようとしているものです。

どうやってインストールするの?

はい、まず2点。

1.nodeがインストールされていること。
2.npmがインストールされていること。

です。
マニュアルには、詳しくインストールから記述していきたいなぁと思っていますが、今日は省きます。
ググればわかるべ。

ちなみに、開発は最新版の0.5.2で行っています。

[sudo] npm install NX

でインストールが完了します。
Next JSはプロセスをデーモン化したり、ワーカーで動作させるのがデフォルトになっています。
もちろん、変更できますが、このデーモン化するプログラムは、npmでインストールするときに自動的にコンパイルされます。
もし、ソースコードから直接持ってきた場合は、展開したディレクトリに、wscriptというファイルがあります、同じディレクトリで

node-waf configure;

node-waf;

とすれば、必要なモジュールがコンパイルされますが、可能な限りnpmでインストールしてください。

どうやって使うの?

はい、インストールが終わっているってことは、NXというモジュールが読み込めるようになっています。
サーバーやコンテンツを配置するディレクトリをまずきめます。
どこでもいいですが、仮に

/home/nextjs/www

としましょう。

www下に、server.jsという名前で(名前は何でも良いですが)ファイルを作成します。
中に、次のようにコードを記載します。

保存します。
そして、wwwディレクトリの下にpublicというディレクトリを作成しましょう。
publicはApacheでいうドキュメントルートです。
この下に任意のファイルを配置します。
試しにindex.htmlでもおいてみてください。

そして、コマンドラインから

とwwwディレクトリで実行します。

そして

にアクセスしてみてください。
publicに配置したindex.htmlが参照できるはずです。

ちなみに、サーバーを停止するには、

とします。

「nodeって、http.createServerでサーバー作って・・・実行した、コマンドライン止まるし、Ctrl+Cとかで終わらせたら終わるんじゃないの?」
っておもった方は、先ほどの説明にもありますが、プロセスがデーモン化されているため、Apacheのように起動・停止ができます。

「え、開発してるときは、普通がいいよ。」

ってひとは、

としてください。
コンソールがちゃんと止まるはずです。

さらに、Next JSはデュアルコア、クァッドコアなどのマルチコアCPUの場合、自動的にワーカーを起動してパフォーマンスを最大まで引き出そうとします。
つまり、createServerがコアの数だけ作成されて連携して動いているんですね。

「いやいや、開発中は1つでいいんです。」
ってひとは、さらに

としてください。
workersはワーカーの数を設定します。
何も設定されていないと、コアの数だけワーカーを作成しますし、任意の数値を入力することも可能です。

簡単だべ?w

これだけ?!

いえいえ、んなわけありません。
実は、ここまで動作させている時点で、アクションと呼ばれるフレームワークの実行する機能が動作しています。
さらに、データベースへの接続や、テンプレートエンジンの利用、MVC構造が提供されています。

アクションの説明は、次にしましょう。

Next JS 0.7.2 リリースとマニュアルの下書き用に。

One thought on “Next JS 0.7.2 リリースとマニュアルの下書き用に。

Comments are closed.