MochiWeb的架设
一直以来都听说Erlang支持高并发的能力很强,Facebook,xiaonei,搜狐白社会都用Erlang做后端消息服务器。
Mochiweb是支持Http协议的一个Erlang服务器框架,今天终于架设成功了。
作为一个实用主义者,就不再多说什么了,直接来安装过程。
第一步,下载安装 Erlang
- 代码: 全选
#进入erlang源码目录
./configure --prefix=/usr/local/erl
make
make install
第二步,建立软链接
- 代码: 全选
ln -s /usr/local/erl/bin/erl /usr/bin/erl
ln -s /usr/local/erl/bin/escript /usr/bin/escript
ln -s /usr/local/erl/bin/erlc /usr/bin/erlc
第三步,测试erl是否可用
- 代码: 全选
erl
>1 1+1.
2
第四步,下载安装mochiweb
- 代码: 全选
mkdir mochiweb
cd mochiweb
svn checkout http://mochiweb.googlecode.com/svn/trunk/
make
escript script/new_mochiweb.erl mochitest ../mochitest
# mochitest 是应用名称 ../mochitest 是应用目录
第五步,测试mochiweb
- 代码: 全选
cd ../mochitest
make
./start-dev.sh
#在浏览器中输入 http://127.0.0.1:8000 ,显示 Mochiweb running 证明安装成功
#ctrl+d 关闭进程
第六步,安装聊天室测试程序,基于Comet服务端推送技术的哦
- 代码: 全选
cd ~
wget http://yoan.dosimple.ch/blog/2008/05/15/chat.tgz
tar zxvf chat.taz
cp chat/priv/www/* mochitest/priv/www
cp chat/src/chat_web.erl mochitest/src/
cd mochitest
mv src/mochitest_web.erl src/mochitest_web.erl1
mv src/chat_web.erl src/mochitest_web.erl
vi src/chat_web.erl
#修改-module(chat_web). 为 -module(mochitest_web).
make
./start-dev.sh
#访问http://127.0.0.1:8000,看到聊天室了吧
想说一点的是,Comet跟服务端语言无关,之所以选用mochiweb,就是因为Mochiweb的支持高并发的能力强。
Comet的原理就是,在客户端用Ajax长轮询/iframe实现与服务器端的一个长连接,服务器一有数据就响应给客户端,所以是推技术,与以前的Ajax的拉是有区别的。
Enjoy it!