首发于微信公众号:【码农在新加坡】,欢迎关注。
个人博客网站:游戏服务器和普通服务器的区别
背景
我做过六年游戏服务端开发,后来想换个方向,转做电商后端开发,做了两年之后感悟很多,也体会到了游戏服务器和普通的服务器的区别。
我所说的游戏是大众的游戏,它要有常见游戏的一些元素,比如交互,比如场景,比如对战。举几个例子:魔兽世界,梦幻西游,王者荣耀。
当然也有很多游戏是弱交互的游戏,其实这类游戏跟普通的服务器的区别会小一点。
其实游戏说到底,最重要的几点就是保持状态、低延迟、交互。这几点就让游戏服务器和普通的服务器(比如电商后端)区分开来了。
互联网和游戏后端开发的区别
游戏特有的
保持连接
游戏一般来说需要保持一个客户端到服务端的连接,可以对客户端的玩家的行为(移动,攻击,操作,互动,聊天)进行及时的反馈以及主动推送给场景内的其他玩家。所以游戏更多的使用TCP来保持客户端和服务端的连接。少量弱交互游戏使用HTTP,对延迟要求更高的游戏会使用UDP。
保持状态
服务端会保持一份玩家的实体,当玩家进行操作时,下次通