本发明专利技术实施例公开了一种服务器启动方法、装置、服务器和介质。该方法包括:当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据;所述新服务器进程发送下线通知至所述旧服务器进程。解决了服务器进程启动时,内存数据会丢失的问题,新服务器进程共享旧服务器进程内存,实现了无需重新拉取内存数据,提高服务器启动效率,减少用户等待时间的效果。
A server startup method, device, server and media
【技术实现步骤摘要】
一种服务器启动方法、装置、服务器和介质
本专利技术实施例涉及服务器
,尤其涉及一种服务器启动方法、装置、服务器和介质。
技术介绍
服务器时网络中为客户端计算机提供各种服务的高性能的计算机。在服务器使用过程中,会对工作进程进行数据存储。在服务器进行程序更新时,启动新服务器进程后,旧服务器进程存储的数据会丢失,新服务器进程需要重新从数据库或者缓存层中拉取数据,但是重新拉取数据耗时较长,导致服务器停止服务时间较长,使用户长时间无法连接服务器。
技术实现思路
本专利技术实施例提供一种服务器启动方法、装置、服务器和介质,以实现新服务器进程共享旧服务器进程内存,无需重新拉取内存,保证旧服务器进程中的内存数据不会丢失,提高新进程启动效率。第一方面,本专利技术实施例提供了一种服务器启动方法,该方法包括:当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据;所述新服务器进程发送下线通知至所述旧服务器进程。第二方面,本专利技术实施例还提供了一种服务器启动装置,该装置包括:内存数据获取模块,用于当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取旧服务器进程的内存数据;下线通知发送模块,用于所述新服务器进程发送下线通知至所述旧服务器进程。第三方面,本专利技术实施例还提供了一种服务器,其中,所述服务器包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例所提供的服务器启动方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如本专利技术任意实施例所提供的服务器启动方法。本专利技术实施例通过当新服务器进程启动时,如果新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据;新服务器进程发送下线通知至旧服务器进程,解决了服务器进程启动时,内存数据会丢失的问题,新服务器进程共享旧服务器进程内存,实现了无需重新拉取内存数据,提高服务器启动效率,减少用户等待时间的效果。附图说明图1是本专利技术实施例一中的服务器启动方法的流程图;图2是本专利技术实施例二中的服务器启动方法的流程图;图3是本专利技术实施例三中的服务器启动装置的结构图;图4是本专利技术实施例四中的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的服务器启动方法的流程图,本实施例可适用于服务器进程启动时的情况,该方法可以由服务器启动装置来执行,具体包括如下步骤:S110、当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据。一般的,当服务器进程运行出现卡顿等不顺畅的现象或当前服务器进程存在某些缺陷需要修复等情况时,需要启动新的服务器进程,使服务器能够正常运行。新的服务器进程启动后,新服务器进程无法获取旧服务器的内存数据,就可能会造成之前保存在服务器中的内存数据的丢失。示例性的,服务器的内存数据包括:暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。所以当新服务器进程启动时,若新服务器进程检测到存在旧服务器进程,需要获取旧服务器进程的内存数据,防止旧服务器进程的内存数据丢失。因此,如果所述新服务器进程检测到存在旧服务器进程,则可先获取所述旧服务器进程的内存数据。示例性地,获取所述旧服务器进程的内存数据,包括:新服务器进程获取共享内存的访问路径,根据所述访问路径获取旧服务器进程的内存数据。一般地,旧服务器进程的内存数据会保存在一个共享内存空间中,该共享内存空间的路径是已知的,可以将旧服务器进程的共享内存空间的内存访问路径写入到新服务器进程的配置文件中,当新服务器进程启动后,新服务器进程根据配置文件中的共享内存空间的内存访问路径获取旧服务器进程的内存数据,使新服务器进程能够共享旧服务器进程的内存数据。在旧服务器进程下线前,新服务器通过内存访问路径获取旧服务器进程的内存数据,保证旧服务器进程下线后,旧服务进程的内存数据不会丢失,新服务器进程也无需重新从数据库或缓存层中重新拉取内存数据,节省了服务器重新启动的事件,提高了服务器的启动效率。S120、新服务器进程发送下线通知至所述旧服务器进程。当无需就服务器进程继续提供服务时,可由新服务器进程发送下线通知至所述旧服务器进程。可选地,新服务器进程发送下线通知至旧服务器进程,包括:当新服务器进程接收到获取内存成功的通知时,新服务器进程发送下线通知至旧服务器进程。示例性的,当新服务器进程获取到旧服务器进程的内存数据时,服务器调用API(ApplicationProgrammingInterface,应用程序接口)向新服务器进程返回获取旧服务进程内存数据成功的结果,若新服务器进程获取旧服务器进程内存数据失败,则服务器调用API向新服务器进程返回获取旧服务进程内存数据失败的结果。当新服务器进程接收到返回的获取内存数据成功的结果后,将下线通知发送至旧服务器进程,旧服务器进程接收到新服务器进程发送的下线通知后,旧服务器进程下线,不再运行。新服务器进程代替旧服务器进程运行,为用户提供服务,从而完成服务器的启动。需要说明的是,有可能存在新服务器进程无法获取到就服务器进程的内存数据的情况,此时,新服务器进程也可以发送下线通知至所述旧服务器进程。例如可以是,当达到预设时长时,如果所述新服务器进程仍未获取到所述旧服务器进程的内存数据,新服务器进程发送下线通知至所述旧服务器进程。或者,当新服务器进程接收到内存数据为空(即,不存在内存数据)的通知时,新服务器进程发送下线通知至旧服务器进程等。在本专利技术实施例中,新服务器进程可以是重新启动旧服务器进程得到的,也可以是对旧服务器进程进行优化后得到的,其中优化可以是增加了新的功能或者修改了程序漏洞等。新服务器进程可以实现旧服务器进程所实现的功能。在上述实施例的基础上,服务器启动方法还可以包括:新服务器进程与用户建立新的用户连接。当旧服务器进程下线后,用户与旧服务器建立的用户连接中断,用户下线,此时,用户需重新与新服务器进程建立新的用户连接,使新服务器进程代替旧服务器进程进行工作。在上述实施例的基础上,服务器启动方法还可以包括:新服务器进程根据用户连接与用户进行交互。用户与新服务器进程的用户连接建立后,新服务器进程处理通过用户连接发送的用户请求,使新服务器进程为用户提供服务。本实施例的技术方案,通过当新服务器进程启动时,如果新服务器进程检测到存在旧服务器进程,则获取旧服务器进程的内存数据;新服务器进程发送下线通知至所述旧服务器进本文档来自技高网...
【技术保护点】
1.一种服务器启动方法,其特征在于,包括:/n当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据;/n所述新服务器进程发送下线通知至所述旧服务器进程。/n
【技术特征摘要】
1.一种服务器启动方法,其特征在于,包括:
当新服务器进程启动时,如果所述新服务器进程检测到存在旧服务器进程,则获取所述旧服务器进程的内存数据;
所述新服务器进程发送下线通知至所述旧服务器进程。
2.根据权利要求1所述的服务器启动方法,其特征在于,所述获取所述旧服务器进程的内存数据,包括:
所述新服务器进程获取共享内存的访问路径,根据所述访问路径获取所述旧服务器进程的内存数据。
3.根据权利要求1所述的服务器启动方法,其特征在于,所述新服务器进程发送下线通知至旧服务器进程,包括:
当所述新服务器进程接收获取内存成功的通知时,所述新服务器进程发送所述下线通知至所述旧服务器进程。
4.根据权利要求1所述的服务器启动方法,其特征在于,还包括:
若所述新服务器进程未获取到旧服务器进程的内存数据时,所述新服务器进程创建新的内存空间,以保存所述新服务器进程所产生的内存数据。
5.根据权利要求4所述的服务器启动方法,其特征在于,所述新服务器进程未获取到旧服务器进程的内存数据,包括:
所述新服务器进程未获取到所述旧服务器进程的内存数据的访问权限。<...
【专利技术属性】
技术研发人员:杨琪,
申请(专利权)人:上海米哈游天命科技有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。