之前听说过Node.js,只是知道它可以应用于服务器端,但是对很多具体的东西并不了解。今天在QCon上听了袁锋的分享《Node.js脱离了浏览器的Javascript》之后,顿时有了想立刻试一下的冲动。
Node.js的安装步骤算是比较简单,没有太多的弯路,主要参考文档:
Building and Installing Node.js
1. 安装Python
根据参考文档说明,从源代码编译安装Node.js需要python2.6或者以上,而通过yum install python.x86_64只能得到2.4.3,所以也要通过源码编译安装python。下面是命令:
复制代码 代码如下:
# wget http://www.python.org/ftp/python/3.2.2/Python-3.2.2.tgz
# tar xzvf Python-3.2.3.tgz
# cd Python-3.2.2
# ./configure
# make
# make test
# make install
完成安装后,执行python命令,可以进入python的命令行窗口。
2. 安装Node.js
按照文档上的说明通过git checkout代码一直不能成功,无论是使用git://github.com/joyent/node.git还是https://github.com/joyent/node.git。所以只能从github网上上下载后再编译安装,具体步骤如下:
复制代码 代码如下:
# wget https://nodeload.github.com/joyent/node/tarball/master
# mv master node.tar.gz
# tar xzvf node.tar.gz
# cd joyent-node-84d0b1b
# ./configure --prefix=/opt/node/
# make
# make install
# cd /usr/bin
# ln -s /opt/node/bin/node node
# ln -s /opt/node/bin/node-waf node-waf
3. 安装npm
npm是用来安装node.js库的包管理器,安装命令相当地简单:
复制代码 代码如下:
# curl http://npmjs.org/install.sh | sh
至此,安装完毕。
在上面的内容中,只用简单的几步就完成了安装。虽然看起来安装都是成功的,但是实际如何就要求我们写一个程序来进行验证一下。由于最近也在学习MongoDB,所以就写一个读取MongoDB数据库:计算actionId为772的日志总数。
4. 使用安装mongodb驱动
复制代码 代码如下:
# npm install mongodb
npm WARN mongodb@0.9.6-23 package.json: bugs['web'] should probably be bugs['url']
npm WARN nodeunit@0.5.1 package.json: bugs['web'] should probably be bugs['url']
> mongodb@0.9.6-23 install /root/develop/node/node_modules/mongodb
> bash ./install.sh
================================================================================
= =
= To install with C++ bson parser do <npm install mongodb --mongodb:native> =
= the parser only works for node 0.4.X or lower =
= =
================================================================================
Not building native library for cygwin
Using GNU make
mongodb@0.9.6-23 ./node_modules/mongodb
根据提示执行:
复制代码 代码如下:
# cd node_modules/mongodb
# bash ./install.sh
注意:驱动必须安装在项目所在的目录下,并不是安装一次所有项目都可以使用。
5. 编写测试代码mongo.js
复制代码 代码如下:
var http = require('http');
var mongodb = require('mongodb');
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain;charset=utf-8'});
mongodb.connect('mongodb://localhost:40202/log', function(err, conn){
conn.collection('log', function(err, coll){
coll.count({'action': 772}, function(err, count){
res.write('The total of action 772 is ' + count + ".\n");
res.end();
});
});
});
}).listen(3000, '127.0.0.1');
console.log('Server running at http://127.0.0.1:3000/');
启动服务器:
复制代码 代码如下:
# node mongo.js
在浏览器访问http://127.0.0.1:3000,可以看到如下输出:
现在可以说前面的安装过程是正确,开了个好头。
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]