pomelo源码分析(一)

        千里之行始于足下,一直说想了解pomelo,对pomelo有兴趣,但一直迟迟没有去碰,虽然对pomelo进行源码分析,在网络上肯定不止我一个,已经有很优秀的前辈走在前面,如http://golanger.cn/,在阅读Pomelo代码的时候,已经连载到了11篇了,在我的源码分析参考了该博客,当然,也会加入我对pomelo的理解,借此希望能提高一下自己对node.js的了解和学习一些优秀的设计。

  • 开发环境:win7
  • 调试环境:webstorm5.0
  • node.js版本:v0.8.21
  • 源码版本package.json:

{
	"name": "chatofpomelo",
	"version": "0.0.1",
	"private": false,
	"dependencies": {
		"pomelo": "0.2.0",
		"log4js": ">= 0.4.1",
		"crc": ">=0.0.1"
	}
}

gameserver/app.js

var pomelo = require('pomelo');
var routeUtil = require('./app/util/routeUtil');
/**
 * Init app for client.
 */
var app = pomelo.createApp();     //创建Application
app.set('name', 'chatofpomelo');  //设置Application名字


// app configure  
app.configure('production|development', function() {  
	// route configures
	app.route('chat', routeUtil.chat);

	// filter configures
	app.filter(pomelo.timeout());
});

// start app
app.start();

process.on('uncaughtException', function(err) {
	console.error(' Caught exception: ' + err.stack);
});

注意:在webstorm下调试,可能因为工作目录的设置原因会导致应用的执行路径问题,导致无法读取配置文件,所以需要根据实际情况修改如下

var opt = {'base':'D:\\src\\pomelo\\chatofpomelo\\game-server'}
var app = pomelo.createApp(opt);
app.set('name', 'chatofpomelo');

opt.base 是你的game-server的实际目录路径,具体可以根据自己需要来定制

app.js 是game-server的主要入口,主要负责创建application,读取配置文件,应用到application设置上,并利用app.start()来执行实际的master,monitor等服务器的start,对于聊天室程序来说,还要做简单的路由和过滤设置。


application, 应用的定义、component管理,上下文配置, 这些使pomelo framework的对外接口很简单, 并且具有松耦合、可插拔架构。

所有服务器的启动都是从运行app

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值