游戏服务端为什么须要登录服?!
我们都知道,非常多游戏在上线时,都会大肆宣传。近期宣传比較多的就是《激战2》了。(当然我不是《激战2》的水军)非常多玩家都会提前坐在电脑前。等候游戏官方给出的开服时间,抢点进入游戏,由于这样能占领时间的红利,能够在游戏中占个好排名。当我们创建角色,进入游戏的时候都会有一个出生点。
我们游戏之旅一般都是从这个出生点開始。伴随着游戏的開始,一般都有游戏新手引导。我们可曾想过为什么要有新手引导呢?。有人会说是让我熟悉一下游戏的流程。可是你可否想过为什么要先引导这个功能、这个任务。不先引导那个功能、那个任务?!先卖个关子。
说回登录服,由于玩家进入登录服和游戏服都须要验证,非常多人会想为什么不将登录服并入到游戏服其中,而是单独出来一个进程。事实上登录服除了登录验证外,另一个非常重要的功能就是创建角色。
之前说到。非常多玩家都是在游戏开服的时间点进入游戏的。假设不作处理,游戏非常easy出现性能瓶颈。对于client来说。在出生点场景非常easy出现超出同屏人数限制;由于每个玩家的人物模型、技能特效以及其他的怪物模型、宠物模型、坐骑模型等等都须要渲染(一般仅仅渲染屏幕可见范围的一切物体)。过多的玩家聚集在同一个地点。肯定会出现性能问题。对于服务端,也有相同的问题。这个问题就是AOI问题(AOI俗称视野)。这个问题也会添加server开销。详细能够查看我以前写过的一篇博客。
(注:这下你知道为什么一些游戏在团战。各个玩家放大招的时候会认为卡了吧)
为了解决问题,那就要回到刚才说到的新手引导问题。新手引导不仅仅要让玩家熟悉游戏流程;非常多时候还会起到引流的作用。
也就是将玩家引向不同的场景,由于这样就能解决之前说到的同屏人数问题还有AOI问题,并且有一些服务端的设计会将不同场景相应到不同的游戏服(多进程),这样也能降低服务端的压力。事实上在开服这个时间节点上。有大量玩家须要在同一时间点创建角色,并且这个过程须要非常多的IO(相对较多)。假设将登录服合并到游戏服,必然会添加游戏服的压力。
新手引导能够将玩家引向不同的场景,提高游戏性能,可是登录是不讲求场景的。终于的结果是创建角色的玩家载入慢,正在玩游戏的玩家会认为卡,伤害了玩家的用户体验。因此将登录服剥离开,利用多进程的优势,会提升整个游戏性能的性能。事实上在游戏策划中,开服開始的一段时间是相当重要,是能决定一个玩家是否留存。假设游戏开服就出现性能问题。玩家也可能会"累"觉不爱了。因此,这时的登录服就显得相当重要了,比开服之后都显得重要。
当然登录服的作用主要体验在mmorpg等,因此登录服在页游、手游的作用在弱化。