pomelo--架构概览

为什么使用nodejs?

为什么使用nodejs开发游戏服务器,大体总结下面几点:
1.io上优势。io密集的应用使用nodejs是最合适的,可达到最好的可伸缩性。
2.多进程单线程的框架。使它在处理复杂逻辑的时候无需考虑线程同步、锁、死锁等一系列问题, 减少了很多逻辑错误。 由多进程node.js组成的服务器群是最理想的应用架构。
3.语言优势。使用javascript开发可以实现快速迭代,如果客户端使用html 5,更可实现代码共用。

游戏服务器架构

  • 一个真正高可扩展的游戏运行架构必须是多进程的。可以很好的实现游戏服务器的可扩展性,达到支撑较多在线用户、降低服务器压力等要求。
    在这里插入图片描述
    运行架构说明:
    1.客户端通过websocket长连接连到connector服务器群。
    2.connector负责承载连接,并把请求转发到后端的服务器群。
    3.后端的服务器群主要包括按场景分区的场景服务器(area)、聊天服务器(chat)和状态服务器等(status), 这些服务器负责各自的业务逻辑。真实的案例中还会有各种其它类型的服务器。
    4.后端服务器处理完逻辑后把结果返回给connector, 再由connector广播回给客户端。
    5.master负责统一管理这些服务器,包括各服务器的启动、监控和关闭等功能。

pomelo架构

  • pomelo把服务器分为前端服务器与后台服务器:
    在这里插入图片描述
  • 而整个服务器都是由一个个可插拨的组件(component)组成,可自定义组件,它的生命周期如下:
    在这里插入图片描述
    对pomelo的管理过程其实就是对组件生命周期的管理。

猜你喜欢

转载自blog.csdn.net/u010223072/article/details/84641364