? 公司考慮焊唬,想把一些游戲的后端的用lua寫,現(xiàn)在公司新的游戲基本上是前后端都使用lua看靠,用lua寫有什么好處呢赶促?我想一下,第一衷笋,使用lua寫芳杏,節(jié)省人力成本
第二,lua語言簡單辟宗,上手很快爵赵,有編程經(jīng)驗,基本上一周能夠上手泊脐。
第三空幻,公司前端使用lua,多年積累了一些lua人才容客。
在自己改寫完秕铛,一款游戲的gameServer后,使用lua有什么不方便之處呢缩挑。
第一但两,lua沒有好的編輯器,是腳本語言供置,不需要編譯谨湘,編寫的時候容易有錯誤,不能及時發(fā)現(xiàn)芥丧。
第二紧阔,不方便調(diào)試,習慣寫前端代碼续担,遇到錯誤可以debug擅耽,但是后端只能查看日志,分析日志得到結(jié)果物遇。
回顧使用lua重寫GameServer,自己最大的感觸就是找錯乖仇,調(diào)試不方便憾儒,加上對liunx命令也不熟悉,遇到問題會把日志拷貝到本地來看分析日志这敬,這樣做效率是比較低的航夺。
還有自己剛開始對日志也不重視,日志記錄的不夠全面崔涂,無法找錯,或者比較隨意始衅,沒有把一些重要的的值打印出來冷蚂,對于分析錯誤沒有價值。后面自己專門把所有寫的代碼把日志補上汛闸。
剛開始以為Server就一個蝙茶,寫的過程發(fā)現(xiàn)server分了很多塊。有AollcServer,userServer,gameServer比賽有MatchManagerServer里面還有很多鏈接诸老。獲取金幣的MoneyClient,鉆石的dioandClient,任務(wù)taskClient隆夯,魅力值,敏感詞别伏,還有redis蹄衷,db操作。這些都可以是獲取對應(yīng)值的接口厘肮。獲取和更新用戶數(shù)據(jù)愧口,通過創(chuàng)建一個鏈接,發(fā)送命令進行操作类茂。這個和客戶端本質(zhì)是差不多耍属,客戶端要獲取數(shù)據(jù)也是通過發(fā)送請求,http請求或者是socket請求巩检『衿客戶端一般都是異步請求的。在c++請求是同步的和異步的兢哭。