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 ,