当前位置:编程学习 > JS >>

node.js 入门(1)

 

可伸缩的网络程序?看了维基上的定义,大致的意思就是你构建一个web程序,它具有一定的弹性,不会在突然剧增的并发访问下死掉。

 

我还是小菜,现在还木有参与过那种可以接受突然剧增的并发访问的web应用。具体是神马情况我纸上谈兵却也木有用啊!

 

node 2009年面世,有了node我们服务器端不单单是php或者是java啦。完全可以基于javascript构建出那么一个完整的web应用(当然node不单单只有这些用处)

 

 

node采用了

 

事件驱动,单线程,非阻塞 三种机制

 

 

node有比较重要的三个核心

 

V8 (google开发的javascript解析引擎,chrome上就是使用的这个啦,V8是c++写的)

 

libev (一个用c写成的库,应用在非阻塞I/O上,基于event loop)

 

libeio (同样也是一个c写成的库,线程池,是node完成在单线程下异步I/O的基础啦)

 

 

node安装起来还是很容易的,我在linux上安装滴,有兴趣可以试试啦

 

 

git clone --depth 1 git://github.com/joyent/node.git # or git clone git://github.com/joyent/node.git if you want to checkout a stable tag

cd node

git checkout v0.5.3 # optional.  Note that master is unstable.

export JOBS=2 # optional, sets number of parallel commands.

mkdir ~/local

./configure --prefix=$HOME/local/node

make

make install

echo 'export PATH=$HOME/local/node/bin:$PATH' >> ~/.profile

echo 'export NODE_PATH=$HOME/local/node:$HOME/local/node/lib/node_modules' >> ~/.profile

source ~/.profile

我安装的时候没有选择那些可选项

 

其他平台的安装方式可以参照下面的网站

 

https://github.com/joyent/node/wiki/Installation

 

 

 

 

假设你安装好了,然后干嘛呢?肯定是写个Hello World呗~~~

 

建个文件hello.js 写下如下内容:

 

 

console.log("hello world");

 

 

 

 

打开您老人家的终端,进到hello.js所在文件夹

 

xxxxx$node hello.js

 

输出是你最熟悉的啦!~~~

 

 

 

 

现在咱们来构建一个http服务器,别怕!很简单的

 

创建文件httpServer.js

 

 

var http = require('http');

http.createServer(function (req, res) {

  res.writeHead(200, {'Content-Type': 'text/plain'});

  res.end('Hello World\n');

}).listen(8888, "127.0.0.1");

console.log('Server running at http://127.0.0.1:8888/');

 

运行哦~,然后开浏览器,你懂的~~

 

 

 

 

今天就先这些吧~

 

我看的第一篇文章在这里,推荐给大家!

补充:web前端 , JavaScript ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,