Posted on 2012-07-23 15:50
点点滴滴 阅读(715)
评论(0) 编辑 收藏 引用 所属分类:
10 服务器
game server内嵌的http服务
如何使gs响应http的请求? 基本思路 实现简单的http server框架、具体游戏逻辑转发给内部handler来处理
一 初始化
开启监听线程(协程)检查端口、设置缓冲区大小
每一个socket连过来时 1、开新协程处理(有调度开销) 2、放入共享队列中,由worker线程池共同维护(有数据同步的问题)
设置每个请求URI对应的回调接口
二 服务期
1、一个socket数据到来后,开新线程,解析http数据,分析出请求的uri、回调、关闭socket、关闭线程(因为http是无连接的)
2、一个socket到来时,其被放入某个thread内部的sockets数组中,
当此worker thread池被调度到之后,依次处理每个socket的数据就可以了(唯一区别是多个sockets由几个线程维护)