我對和GOLANG寫MMO服務器的一些遐想:
1、沙盒(隔離性)
SKYNET:原生LUA STATE作為沙盒, 進行服務器間隔離安全性高; 服務可以很容易的配置到不同節點之上。
GO:估計用RECOVER,PANIC來支持, 用GORUTINE來當做服務;或許間點可以通過開關,選擇性開放服務,也是可以做到的。
2、熱更新
SKYNET:snax 熱更新, 還是比較方便, 直接個修改接口代碼
GO:或許可以通過, SERVICE化服務, 可以做到無感知更新程序; 不得不說GO寫網絡太方便了,很多接口比較好做。*功能服務化*
3、並發模型
SKYNET:ACTOR
GO:CSP
4、移植性
SKYNET:生產還得在LINUX下
GO:完全平台無關
5、生產力
SKYNET:邏輯功能主要用LUA寫, 開發還算比較快
GO:據說更快
6、可以測試性
SKYNET:要寫單元測試,不是很方便
GO:完善單元測試支持,非常方便