刚开始接触C++的服务器开发,现在就职于一家游戏公司,目前参与的是一个即将上线的页游项目。由于对游戏服务器架构不熟悉,对游戏本身的业务逻辑也不熟悉,所以打算先看看游戏服务器的底层架构,至于也完成的划分则需要将来慢慢熟悉了!
没有什么专门讲解游戏服务器架构的书籍,所以就多看看项目的底层实现,粗略地总结出如下图的网络层和数据库层的架构图:
(1)网络跨平台:window采用select网络模型,linux采用epoll网络模型。其他平台暂时不支持。
(2)数据库MySqL:只有物理数据库,没有其他内存数据库。
(3)个人感受:通过各个容器的中转解耦了各个线程,使多线程共享数据,但业务独立。