nodejs游戏服务器开发(一)

nodejs游戏服务器开发(一),第1张

随着nodejs的火热,计算机的发展,使得游戏服务器也开始转向解释语言了,而有些人喜欢用c++/Lua开发服务器,我也曾如此做过。后来,随着网易开源的pomole游戏服务器框架,go语言的出现,nodejs已经开始在游戏服务器端火起来了!少说无聊的。

    由于我是在外面已经购买有一台服务器,所以我的环境是直接布署到上面的!具体怎么布置,我就不多说了,我朋友的博客里有,包括pomole的都有。      游戏服务器,都是建立在socket的,要不然就是类似于socket的协议上。而nodejs自身就支持3种连接方式 socket http socket.io 而我们游戏要用的就以两种为主。 我就只以tcp socket来说明吧,因为我也不打算做网页游戏,所以就不在那方面多说了! 正式代码:

var net = require('net');

var HOST = 'your ip'; var PORT = your port; // 创建一个TCP服务器实例,调用listen函数开始监听指定端口 // 传入net.createServer()的回调函数将作为”connection“事件的处理函数 // 在每一个“connection”事件中,该回调函数接收到的socket对象是唯一的 net.createServer(function(sock) {     // 我们获得一个连接 - 该连接自动关联一个socket对象     console.log('CONNECTED: ' +         sock.remoteAddress + ':' + sock.remotePort);     // 为这个socket实例添加一个"data"事件处理函数     sock.on('data', function(data) {         console.log('DATA ' + sock.remoteAddress + ': ' + data);         var Message = require('./Message');         var msg = new Message(data);         msg.parseMessage();         // 回发该数据,客户端将收到来自服务端的数据         sock.write('Server said "' + data + '"');     });     // 为这个socket实例添加一个"close"事件处理函数     sock.on('close', function(data) {         console.log('CLOSED: ' +             sock.remoteAddress + ' ' + sock.remotePort);     }); }).listen(PORT, HOST); console.log('Server listening on ' + HOST +':'+ PORT); 这个是从我服务器上拿下来的一小块代码,里面实现了socket的连接,至于如何解释,全是message.js里,这个我就不共享了,反正方式都差不多,要不然就用开源的第三框架!
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » nodejs游戏服务器开发(一)

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情