基于分布式服务器的登录方法、装置及系统制造方法及图纸

技术编号:19352569 阅读:22 留言:0更新日期:2018-11-07 17:39
本发明专利技术公开了一种基于分布式服务器的登录方法、装置及系统。其中,该方法包括:接收客户端发送的登录请求,将与客户端相对应的验证码标识存储到客户端对应的浏览器缓存信息中;将与客户端相对应的验证码信息发送给客户端,将验证码标识与验证码信息关联存储到预设数据库;接收客户端根据验证码信息发送的验证请求,根据客户端对应的浏览器缓存信息确定与客户端相对应的验证码标识,从预设数据库查询与客户端相对应的验证码标识关联存储的验证码信息;根据查询到的验证码信息对验证请求进行校验,根据校验结果向客户端返回登录响应消息。该方式能够在分布式服务器中实现用户登录功能,能够应用于海量用户的场景中。

【技术实现步骤摘要】
基于分布式服务器的登录方法、装置及系统
本专利技术涉及计算机
,具体涉及一种基于分布式服务器的登录方法、装置及系统。
技术介绍
在现有的用户登录方式中,通常由服务器接收到客户端的登录请求后,为客户端生成对应的验证码信息。然后,一方面,服务器将该验证码信息发送给客户端,以供其使用该验证码信息进行登录,另一方面,服务器将该验证码信息存储到服务器内存中,以便在客户端登录过程中对其发送的验证码信息进行校验,根据校验结果确定该客户端能否登录成功。但是,专利技术人在实现本专利技术的过程中发现,现有技术中至少存在下述缺陷:由于服务器将生成的验证码信息存储在服务器内存中,因此,只能应用于单机场景中,即:只能由一台服务器提供登录服务。当客户端数量庞大,一台服务器难以应对时,无法对服务器进行扩展,原因在于:扩展之后,生成验证码信息的服务器与后续校验的服务器可能分属于两台不同的服务器,而两台服务器不能互相访问对方内存中的验证码信息而导致用户无法登录。由此可见,现有的用户登录方式无法应用于分布式服务器场景中。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于分布式服务器的登录方法、装置及系统。根据本专利技术的一个方面,提供了一种基于分布式服务器的登录方法,包括:接收客户端发送的登录请求,将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中;将与所述客户端相对应的验证码信息发送给所述客户端,将所述验证码标识与所述验证码信息关联存储到预设数据库;接收所述客户端根据所述验证码信息发送的验证请求,根据所述客户端对应的浏览器缓存信息确定与所述客户端相对应的验证码标识,从所述预设数据库查询与所述客户端相对应的验证码标识关联存储的验证码信息;根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息。可选的,所述将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中的步骤具体包括:查询所述客户端对应的浏览器缓存信息中是否已存储有与所述客户端相对应的验证码标识;若是,直接获取所述客户端对应的浏览器缓存信息中已存储的与所述客户端相对应的验证码标识;若否,为所述客户端生成相对应的验证码标识,并将生成的与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中。可选的,所述为所述客户端生成相对应的验证码标识的步骤具体包括:根据所述预设数据库中维护的验证码生成信息,为所述客户端生成相对应的验证码标识,并根据生成结果更新所述预设数据库中维护的验证码生成信息。可选的,所述将所述验证码标识与所述验证码信息关联存储到预设数据库的步骤具体包括:将所述验证码标识作为键,将所述验证码信息作为值,按照键值对方式存储所述验证码标识与所述验证码信息。可选的,所述根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息的步骤具体包括:获取所述验证请求中包含的验证码内容,将所述验证码内容与所述查询到的验证码信息进行比对;根据比对结果向所述客户端返回成功类型或失败类型的登录响应消息。可选的,所述分布式服务器至少包括:第一服务器以及第二服务器,则所述接收客户端发送的登录请求,将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中的步骤由所述第一服务器执行;且所述接收所述客户端根据所述验证码信息发送的验证请求的步骤由所述第二服务器执行;所述预设数据库用于供所述第一服务器以及第二服务器共享。可选的,所述客户端对应的浏览器缓存信息为Cookie信息。可选的,所述预设数据库为Redis数据库。根据本专利技术的另一方面,提供了一种基于分布式服务器的登录装置,包括:接收模块,适于接收客户端发送的登录请求,将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中;存储模块,适于将与所述客户端相对应的验证码信息发送给所述客户端,将所述验证码标识与所述验证码信息关联存储到预设数据库;查询模块,适于接收所述客户端根据所述验证码信息发送的验证请求,根据所述客户端对应的浏览器缓存信息确定与所述客户端相对应的验证码标识,从所述预设数据库查询与所述客户端相对应的验证码标识关联存储的验证码信息;校验模块,适于根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息。可选的,所述接收模块具体适于:查询所述客户端对应的浏览器缓存信息中是否已存储有与所述客户端相对应的验证码标识;若是,直接获取所述客户端对应的浏览器缓存信息中已存储的与所述客户端相对应的验证码标识;若否,为所述客户端生成相对应的验证码标识,并将生成的与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中。可选的,所述接收模块具体适于:根据所述预设数据库中维护的验证码生成信息,为所述客户端生成相对应的验证码标识,并根据生成结果更新所述预设数据库中维护的验证码生成信息。可选的,所述存储模块具体适于:将所述验证码标识作为键,将所述验证码信息作为值,按照键值对方式存储所述验证码标识与所述验证码信息。可选的,所述校验模块具体适于:获取所述验证请求中包含的验证码内容,将所述验证码内容与所述查询到的验证码信息进行比对;根据比对结果向所述客户端返回成功类型或失败类型的登录响应消息。可选的,所述分布式服务器至少包括:第一服务器以及第二服务器,则接收模块和/或存储模块设置在所述第一服务器中;且所述查询模块和/或校验模块设置在所述第二服务器中;所述预设数据库用于供所述第一服务器以及第二服务器共享。可选的,所述客户端对应的浏览器缓存信息为Cookie信息。可选的,所述预设数据库为Redis数据库。根据本专利技术的又一个方面,提供了一种基于分布式服务器的登录系统,包括:根据上述的基于分布式服务器的登录装置、以及所述预设数据库。可选的,基于分布式服务器的登录装置包括:多台分布式服务器。根据本专利技术的又一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行上述基于分布式服务器的登录方法对应的操作。根据本专利技术的再一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行如上述基于分布式服务器的登录方法对应的操作。根据本专利技术公开的基于分布式服务器的登录方法、装置及系统,首先,在接收客户端发送的登录请求后,将与客户端相对应的验证码标识存储到客户端对应的浏览器缓存信息中;并将与客户端相对应的验证码信息发送给客户端,将验证码标识与验证码信息关联存储到预设数据库;然后,在接收所述客户端根据所述验证码信息发送的验证请求后,根据客户端对应的浏览器缓存信息确定与客户端相对应的验证码标识,从预设数据库查询与客户端相对应的验证码标识关联存储的验证码信息;根据查询到的验证码信息对验证请求进行校验,根据校验结果向客户端返回登录响应消息。由此可见,在上述方式中,一方面,提前将与客户端相对应的验证码标识存储到客户端对应的浏览器缓存信息中,另一方面,将验证码标识与验证码信息关联存储到预设数据库中,相应地,当后续接收到客户端根据所述验证码信息发送本文档来自技高网...

【技术保护点】
1.一种基于分布式服务器的登录方法,包括:接收客户端发送的登录请求,将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中;将与所述客户端相对应的验证码信息发送给所述客户端,将所述验证码标识与所述验证码信息关联存储到预设数据库;接收所述客户端根据所述验证码信息发送的验证请求,根据所述客户端对应的浏览器缓存信息确定与所述客户端相对应的验证码标识,从所述预设数据库查询与所述客户端相对应的验证码标识关联存储的验证码信息;根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息。

【技术特征摘要】
1.一种基于分布式服务器的登录方法,包括:接收客户端发送的登录请求,将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中;将与所述客户端相对应的验证码信息发送给所述客户端,将所述验证码标识与所述验证码信息关联存储到预设数据库;接收所述客户端根据所述验证码信息发送的验证请求,根据所述客户端对应的浏览器缓存信息确定与所述客户端相对应的验证码标识,从所述预设数据库查询与所述客户端相对应的验证码标识关联存储的验证码信息;根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息。2.根据权利要求1所述的方法,其中,所述将与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中的步骤具体包括:查询所述客户端对应的浏览器缓存信息中是否已存储有与所述客户端相对应的验证码标识;若是,直接获取所述客户端对应的浏览器缓存信息中已存储的与所述客户端相对应的验证码标识;若否,为所述客户端生成相对应的验证码标识,并将生成的与所述客户端相对应的验证码标识存储到所述客户端对应的浏览器缓存信息中。3.根据权利要求2所述的方法,其中,所述为所述客户端生成相对应的验证码标识的步骤具体包括:根据所述预设数据库中维护的验证码生成信息,为所述客户端生成相对应的验证码标识,并根据生成结果更新所述预设数据库中维护的验证码生成信息。4.根据权利要求1-3任一所述的方法,其中,所述将所述验证码标识与所述验证码信息关联存储到预设数据库的步骤具体包括:将所述验证码标识作为键,将所述验证码信息作为值,按照键值对方式存储所述验证码标识与所述验证码信息。5.根据权利要求1-4任一所述的方法,其中,所述根据查询到的验证码信息对所述验证请求进行校验,根据校验结果向所述客户端返回登录响应消息的步骤具体包括:获取所述验证请求中包含的验证码内容,将所述验证...

【专利技术属性】
技术研发人员:韩竞竞李欣龙慧
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1