(十一)nodejs循序渐进-高性能游戏服务器框架pomelo之启动流程和组件
游戏启动过程
启动入口
在使用pomelo进行游戏开发时,工程目录下的app.js是整个游戏服务器的启动运行入口。app.js中创建项目,进行默认配置并启动服务器的代码如下:
var pomelo = require('pomelo');
var app = pomelo.createApp();
app.set('name', 'nameofproject');
app.start();
从上面的代码可以看出,用户首先需要在项目中引入pomelo,然后创建application的实例app,接着完成一些基本的应用配置,最后应用就可以启动了。当app.js运行起来后,pomelo会根据游戏的配置启动不同的相关组件及服务器。
服务器与组件
服务器启动流程的主要工作就是逐一启动app.load注册的组件。组件是连接pomelo框架和当前服务器所依赖的服务之间的桥梁。不同的服务器可以选择加载不同的组件。Pomelo提供了一些系统默认的组件,主要包括:handler, filter, master, monitor, proxy, remote, server, sync, connection。开发者也可以根据需要,开发自己的组件,并加载到服务器进程中。
组件同时是具有生命周期的,其生命周期可以包括start, after start, stop等。在组件中可以实现这些方法,应用服务器会在不同的运行阶段执行组件不同生命周期的方法。
启动流程详述
应用创建及启动
所有服务器的启动都是从运行app.js开始。每一个服务器的启动都首先创建一个全局唯一的application对象,该对象中挂载了所在服务器的所有信息,包括服务器物
(十一)nodejs循序渐进-高性能游戏服务器框架pomelo之启动流程和组件相关推荐
- (十二)nodejs循序渐进-高性能游戏服务器框架pomelo之创建一个游戏聊天服务器
上个章节我们简单介绍了下pomelo的安装和目录结构,有读者可能觉得有点吃不消,为什么不再深入讲一讲目录结构和里边的库,这里我就不费口舌了,大家可以去官网参考文档说明,本文只告诉大家如何利用这个框架来 ...
- (十四)nodejs循序渐进-高性能游戏服务器框架pomelo之开发Treasures游戏
#Tutorial 2 -- Treasures ##描述 Treasures 游戏是从 LordOfPomelo 中抽取出来,去掉了大量的游戏逻辑,用以更好的展示 Pomelo 框架的用法以及运作机 ...
- (十三)nodejs循序渐进-高性能游戏服务器框架pomelo之扩展聊天服务器为机器人自动聊天
聊天服务器扩展 大家在上一篇文章里相信已经学会了pomelo框架的基本用法了,那么我们在上一篇文章的代码基础上继续扩展,丰富系统,另外也熟悉下他的更多的用法,这一节我将扩展它:增加一个机器人自动聊天的 ...
- (十五)nodejs循序渐进-高性能游戏服务器框架pomelo之Protobuf模块
消息压缩 在实际编程中,为了减少数据传输带宽的消耗,提高传输效率,pomelo提供了对消息的压缩,包括基于字典的对route的压缩和基于protobuf的对具体传输数据的压缩. route压缩 在实际 ...
- (十)nodejs循序渐进-高性能游戏服务器框架pomelo之介绍和安装篇
目录 Pomelo 安装Pomelo 创建demoserver项目 pomelo命令 项目结构说明 pomelo框架 架构
- 网易开源游戏服务器框架-Pomelo实践(一)
Pomelo是网易开发的一款开源游戏服务器框架,出了做游戏的服务器端,他也可以作为一个高效的网站后台.网址是:http://pomelo.netease.com 其实,他官方的文档是中文的,照理说,我 ...
- python游戏服务器框架_有那些比较成熟的开源游戏服务器引擎/框架(编程语言不限)?...
更新,没有看到服务器(逃. 下面仅为游戏引擎和框架推荐,需要的小伙伴简单看一下,正确的答案努力撰写中. 从角色扮演游戏到即时策略游戏,从冒险解谜游戏到动作射击游戏,甚至是只有一兆大小的迷你游戏,都有起 ...
- 高性能分布式游戏服务器框架
欢迎大家Fork mqant开源框架 为什么决定要重新造一个轮子? 目前网上优秀的开源游戏服务器框架也不少(当然与web框架比起来就少太多了),但总结起来都各有各的优缺点,下面列出我在选型过程中的一些 ...
- arduino nano 蓝牙_探索 Golang 云原生游戏服务器开发,5 分钟上手 Nano 游戏服务器框架...
介绍 Nano 是什么? 轻量级,方便,高性能 golang 的游戏服务器框架. nano 是一个轻量级的服务器框架,它最适合的应用领域是网页游戏.社交游戏.移动游戏的服务端.当然还不仅仅是游戏,用 ...
最新文章
- PCL 点云特征描述与提取
- linux下挂载nas存储异常处理
- jQuery——stop
- 影响软件开发的两个关键性的问题
- 从零开发一个laravel项目的增删改查、详情
- 不愧是阿里大佬,mysql存储过程写法案例
- easyvision视觉软件 源码_一对一直播源码都有哪些独具一格的优势?
- 动态css语言less,less让css具有动态语言的特性
- 解决北京户口,中科院计算所校招,CV/图像处理工程师,博士优先
- 深度学习框架PyTorch:入门与实践 学习(三)
- 百度指数查关键词(惊到我啦)
- 软考数据库系统工程师笔记
- python 两个nc文件 风场,ECMWF 不同step 的 NC 文件如何合并
- 数据库sql语句关键词大全(适合老人),基本你能知道这几个关键词,基本就知道该如何写了(超简略)
- 12306网站火车票抢票详细攻略(gohome抢票程序)
- Lambda表达式的几种简化形式
- 使用AudioRecorder录音
- 节假日判断工具(Java)
- beego之bee 工具简介
- 【转】Blogcn(中国博客网)宣布终止免费服务
热门文章
- android+3.0新加的动画,Android动画片
- foxmail 怎么把邮件格式默认为html_Python SMTP发送邮件-smtplib模块
- linux怎么设置tomcat自动启动,linux添加tomcat服务并设置开机启动
- tensorflow 旋转图片_使用TensorFlow对图像进行随机旋转的实现示例
- 【转】DICOM:DICOM三大开源库对比分析之“数据加载”
- 【转】OData的初步认识
- 一步步编写操作系统 60 cpu的IO特权级2 什么是驱动程序
- 一步步编写操作系统 32 linux内核获取内存容量的方法
- python多重赋值技巧_python教程12课:多元赋值、多重赋值、运算符以及判断字符串类型...
- 【洛谷 - P1231 】教辅的组成(网络流最大流,拆点)