Pomelo安装笔记

不知道Pomelo的可以wiki先。

操作系统环境Linux(ubuntu)
1、下载node.js(http://nodejs.org/)
2、安装g++
sudo apt-get install g++
3、安装node.js:
tar -zxf node-v0.6.18.tar.gz #Download this
 cd node-v0.6.18
./configure && make && sudo make install
///

Simply follow the instructions given here:

Example install:

sudo apt-get install python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

It installs current stable Node on the current stable Ubuntu. Quantal (12.10) users may need to install the software-properties-common package for the add-apt-repository command to work: sudo apt-get install software-properties-common

As of Node.js v0.10.0, the nodejs package from Chris Lea's repo includes both npm and nodejs-dev.

Don't give sudo apt-get install nodejs npm just sudo apt-get install nodejs

///
4、安装pomelo
sudo npm install pomelo -g
如果这步出问题,请检查python2.7.x版本是否安装,注意不能用3.x.x版本
5、pomelo init .
记着最后有一个"." ,表示在本目录下初始化站点,一大片create后,如果没有其他提示表示成功
然后输入sh npm-install.sh,注意,这个脚本必须在网站根目录下执行
6、启动项目
pomelo start [development | production] [--daemon]
在game-server 目录下执行pomelo start
若需要后台运行 请先安装
sudo npm install forever -g
在game-server 目录下执行pomelo start --daemon(注意是--)
启动web服务器
在web-server目录下执行node app
7、访问127.0.0.1:3001(默认端口)
可以看到pomelo页面,单击test game server,可以看到弹出game server is OK
至此pomelo安装完成

webstorm安装
下载地址:http://www.jetbrains.com/webstorm/
1、安装webstorm前需要安装JDK
sudo apt-get install default-jdk
2、将webstorm解压
3、运行bin/webstorm.sh
命令行:sh bin/webstorm.sh
至此webstorm安装完成,接下来开始调试pomelo
调试pomelo
以下内容摘自https://github.com/NetEase/pomelo/wiki/使用-WebStorm-IDE-调试-Pomelo-应用程序

修改配置以启动带有调试模式的服务器

一、打开文件

打开game-server/config/servers.json。为了便于便于开发,我们将服务器数目缩减至每功能1个运行实例。这样你就会看到:

二、修改并保存

我们对gate服务器的负载分配原理产生了兴趣,想要调试它。这时,我们只需要在{"id": "gate-server-1", ...的行末,花括号}前,插入下面代码, "args": " --debug=32312 "。使gate服务器的配置组变成这样:

当再次启动服务器时,master服务器会读取新的配置,并以这个配置运行gate-server-1服务器。
而该服务器的进程,会监听32312端口,以便调试器连接。将端口设置的偏高是为了减少端口冲突的可能性。开发过程中,如果启动后发现有报ADDRINUSE(端口已被占用)的错误,请使用pomelo kill --force杀光Pomelo程序,并调整此处的端口值。

配置IDE的调试器

一、打开Edit Configurations...对话框

可以从运行、调试按钮前面的小三角进入,或者从工具栏中选择Run Edit Configurations...

二、新增一条Node.js Remote Debug



Name栏名字可以随意起,但最好选择明确易懂的。然后选中Single instance only,这样只会启动一个调试器。而不会有很多相同的调试器都连到后面指定的调试端口。
下面的Host本地127.0.0.1Debug Port填入刚刚上面指定的端口号,我这里用32312,与前面配置文件中的完全一致。Local directory指定当前的game-server/app.js目录所在目录。

附:运行配置

当然你可能已经注意到了,这里的Configurations不仅包含调试,还包括运行配置。运行配置方法跟一般的NodeJS程序配置方法相同。NodeJS新人可以参考图片中配置。注意被框的内容。

准备调试

一、分别启动Web、Chat服务器

如果你有做过运行Chat和Web服务器的配置,现在就可以从运行、调试按钮前面的配置下拉菜单中,分别选择Chat以及Web后,点击[►]运行按钮。运行后,可以从IDE下方的控制台输出中查看日志输出,可以检查一下这两个服务器的启动是否成功。如果出现红字,多半表示启动失败。你可以根据提示的报错信息Google或者 提交Issue ,以查找解决方案。

二、连接调试器

再从配置下拉菜单中选择刚刚的调试配置gate study,之后点击[☼]调试按钮。检查窗口下方的Debugger,可以看到有提示说Connected to 127.0.0.1:32312

三、设置断点

由于我们想调试gate服务器中,与connector分配相关的代码,所以在IDE中,打开app/servers/gate/handler/gateHandler.js。定位到 第30行 ,在此处下一个断点。

实践

浏览器中打开 http://127.0.0.1:3001/index.html 会看到 Chat of Pomelo标题的登录页面。填入两栏表单后,点击【JOIN】按钮。

此时,页面将不会做出任何反应,是因为服务器端的代码被断点拦下了。而IDE会因为调试器而被激活:

下方窗口中,除了常规调试用到的StepOver、StepInto、StepOut等必须功能外,有很多好用的工具,比如即时表达式求值、切换异常发生时自动中断……这里就不深入探讨了。 
小技巧:
E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?
可能正在安装其他程序,请关闭其他安装程序。
无法创建目录或者安装出现error
请使用sudo或者管理员帐号安装
linux可以使用cd xxx && run,即进入xxx目录并且执行run命令,类似与管道命令
安装调试中的一些要点:
1、定义好debug端口,并且在远程调试中配置
2、其他的node.js服务器需要在node.js中配置好
3、要按照项目启动顺序启动,先game-server,然后web-server,然后再运行Node.js Remote Debug
4、配置运行后可以在浏览器中访问,若代码中有断点,则可以进入断点。
5、注意,断点运行后如果要测试其他的,必须Resume Program(F9),然后再运行调试其他的。不能直接刷新页面,直接刷新会导致调试失效。
6、如果发现调试失效了,可以在终止所有运行中的server和Remote Debug,然后在终端窗口执行pomelo kill --force。然后重新启动server和Remote Debug就可以了
7、这里仅是调试gate服务器的配置,如果要调试chat,则需要在servers.json中的chat段加入配置(红色部分)如下:
 "chat":[
             {"id":"chat-server-1", "host":"127.0.0.1", "port":6050,"args": "--debug=32313"}
        ]
然后Node.js Remote Debug中配置127.0.0.1:32313即可

转贴:http://blog.sina.com.cn/s/blog_44d803c90101k78j.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值