Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的 易于扩展的网络应用。Node.js 借助事件驱动, 非阻塞 I/O 模型变得轻量和高效,非常适合运行在分布式设备的数据密集型的实时应用。

       公司需要做一个消息推送的服务,然后开发这边决定要使用 nodejs 来实现基础服务,然后提供 api 给第三方使用来实现消息推送的功能。 然后,我就需要给他们提供 nodejs 的开发环境了,然后我就写篇文来记录下了。。。


一、Node.js部署

[root@lh01 ~]# cd /usr/local/src/
[root@lh01 src]# wget http://nodejs.org/dist/v0.10.36/node-v0.10.36-linux-x64.tar.gz
--2015-02-06 09:11:23--  http://nodejs.org/dist/v0.10.36/node-v0.10.36-linux-x64.tar.gz
Resolving nodejs.org... 165.225.133.150
Connecting to nodejs.org|165.225.133.150|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5676610 (5.4M) [application/octet-stream]
Saving to: “node-v0.10.36-linux-x64.tar.gz”

100%[============================================================>] 5,676,610   65.6K/s   in 74s     

2015-02-06 09:12:37 (74.8 KB/s) - “node-v0.10.36-linux-x64.tar.gz” saved [5676610/5676610]

[root@lh01 src]# tar zxf node-v0.10.36-linux-x64.tar.gz                                
[root@lh01 src]# mv node-v0.10.36-linux-x64 /usr/local/
[root@lh01 src]# cd /usr/local/
[root@lh01 local]# ln -s node-v0.10.36-linux-x64 nodejs
[root@lh01 local]# echo 'PATH=$PATH:/usr/local/nodejs/bin' >> /etc/profile 
[root@lh01 local]# tail -1 /etc/profile
PATH=$PATH:/usr/local/node/bin
[root@lh01 local]# source /etc/profile
[root@lh01 local]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/nodejs/bin
[root@lh01 local]# node -v
v0.10.36
[root@lh01 local]# npm -v    # npm是nodejs的包管理器
1.4.28


二、测试

[root@lh01 local]# mkdir /data/web -p
[root@lh01 local]# cat >> /data/web/index.js << EOF
> var http = require("http");
> http.createServer(function(request, response) {
> response.writeHead(200, {
> "Content-Type" : "text/plain" // 输出类型
> });
> response.write("Hello World\n");// 页面输出
> response.end();
> }).listen(8100); // 监听端口号
> console.log("nodejs start listen 8100 port!");
> EOF
[root@lh01 local]# node /data/web/index.js &
[1] 21454
[root@lh01 local]# nodejs start listen 8102 port!
[root@lh01 local]# lsof -i tcp:8100
COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
node    21454 root   10u  IPv4 1772992      0t0  TCP *:xprint-server (LISTEN)
[root@lh01 local]# curl http://120.27.45.109:8100/index.js
Hello World
[root@lh01 local]#


OK!