Posted on 2012-07-23 15:50
點點滴滴 閱讀(729)
評論(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由幾個線程維護)