发明内容
有鉴于此,本公开的目的在于提供一种访问请求处理方案,以保障客户端正常访问的前提下,提高访问效率。
第一方面,本公开实施例提供了一种访问请求处理方法,应用于调度服务器,所述调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移;所述访问请求处理方法包括:
当接收到客户端发送的访问请求时,获取所述访问请求中包含的客户端标识;
基于所述客户端标识,确定当前保存所述客户端的历史行为数据的目标后台服务器;
将所述目标后台服务器对应的访问地址发送至所述客户端,以使所述客户端基于所述访问地址向所述目标后台服务器发送所述访问请求。
在一些实施方式中,所述调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器,包括:
根据在当前时间周期内,所述客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,将确定的该地域信息对应的后台服务器作为更新后的用于保存所述客户端的历史行为数据的目标后台服务器;其中,初始保存所述客户端的历史行为数据的后台服务器为所述客户端的注册地域对应的后台服务器。
在一些实施方式中,所述调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器,包括:
根据在当前时间周期内,所述客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息;
若所述地域信息对应的候选后台服务器中包括当前保存所述客户端的历史行为数据的后台服务器,则仍然将当前保存所述客户端的历史行为数据的后台服务器作为更新后用于保存所述客户端的历史行为数据的目标后台服务器;
若所述候选后台服务器中不包括当前保存所述客户端的历史行为数据的后台服务器,则将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存所述客户端的历史行为数据的目标后台服务器;
其中,初始保存所述客户端的历史行为数据的后台服务器为所述客户端的注册地域对应的后台服务器。
在一些实施方式中,所述通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,包括:
若更新前后的目标后台服务器不一致,则向更新前的第一目标后台服务器发送第一数据迁移指示,所述第一数据迁移指示中包括客户端标识和第二目标后台服务器标识,用于指示所述第一目标后台服务器将与所述客户端标识对应的历史行为数据迁移至所述第二目标后台服务器;并向更新后的第二目标后台服务器发送第二数据迁移指示,所述第二数据迁移指示中包括客户端标识和第一目标后台服务器标识,用于指示所述第二目标后台服务器接收并存储来自所述第一目标后台服务器的、与所述客户端标识对应的历史行为数据。
在一些实施方式中,所述目标后台服务器为后台服务器集群;每个地域信息对应一个后台服务器集群;
基于所述客户端标识,确定当前保存所述客户端的历史行为数据的目标后台服务器,包括:
基于所述客户端标识,确定周期性更新的用于保存所述客户端标识对应的历史行为数据的后台服务器集群;
所述将所述目标后台服务器对应的访问地址发送至所述客户端,包括:
根据所述后台服务器集群中各个后台服务器的负载情况,从所述后台服务器集群中选择一个后台服务器,将选择的后台服务器对应的访问地址发送至所述客户端。
第二方面,本公开实施例提供了一种访问请求处理装置,驻留于调度服务器,所述访问请求处理装置包括更新模块,所述更新模块用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移;所述访问请求处理装置还包括:
获取模块,用于当接收到客户端发送的访问请求时,获取所述访问请求中包含的客户端标识;
确定模块,用于基于所述客户端标识,确定当前保存所述客户端的历史行为数据的目标后台服务器;
发送模块,用于将所述目标后台服务器对应的访问地址发送至所述客户端,以使所述客户端基于所述访问地址向所述目标后台服务器发送所述访问请求。
在一些实施方式中,所述更新模块在用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器时,包括:
根据在当前时间周期内,所述客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,将确定的该地域信息对应的后台服务器作为更新后的用于保存所述客户端的历史行为数据的目标后台服务器;其中,初始保存所述客户端的历史行为数据的后台服务器为所述客户端的注册地域对应的后台服务器。
在一些实施方式中,所述更新模块在用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存所述客户端的历史行为数据的目标后台服务器时,包括:
根据在当前时间周期内,所述客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息;
若所述地域信息对应的候选后台服务器中包括当前保存所述客户端的历史行为数据的后台服务器,则仍然将当前保存所述客户端的历史行为数据的后台服务器作为更新后用于保存所述客户端的历史行为数据的目标后台服务器;
若所述候选后台服务器中不包括当前保存所述客户端的历史行为数据的后台服务器,则将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存所述客户端的历史行为数据的目标后台服务器;
其中,初始保存所述客户端的历史行为数据的后台服务器为所述客户端的注册地域对应的后台服务器。
在一些实施方式中,所述更新模块在用于通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移时,包括:
若更新前后的目标后台服务器不一致,则向更新前的第一目标后台服务器发送第一数据迁移指示,所述第一数据迁移指示中包括客户端标识和第二目标后台服务器标识,用于指示所述第一目标后台服务器将与所述客户端标识对应的历史行为数据迁移至所述第二目标后台服务器;并向更新后的第二目标后台服务器发送第二数据迁移指示,所述第二数据迁移指示中包括客户端标识和第一目标后台服务器标识,用于指示所述第二目标后台服务器接收并存储来自所述第一目标后台服务器的、与所述客户端标识对应的历史行为数据。
在一些实施方式中,所述目标后台服务器为后台服务器集群;每个地域信息对应一个后台服务器集群;
所述确定模块在用于基于所述客户端标识,确定当前保存所述客户端的历史行为数据的目标后台服务器时,包括:
基于所述客户端标识,确定周期性更新的用于保存所述客户端标识对应的历史行为数据的后台服务器集群;
所述发送模块在用于将所述目标后台服务器对应的访问地址发送至所述客户端时,包括:
根据所述后台服务器集群中各个后台服务器的负载情况,从所述后台服务器集群中选择一个后台服务器,将选择的后台服务器对应的访问地址发送至所述客户端。
第三方面,本公开实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如第一方面所述访问请求处理方法的步骤。
第四方面,本公开实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面所述访问请求处理方法的步骤。
本公开实施例提供的访问请求处理方法,应用于调度服务器,调度服务器能够周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,比如每隔半年根据客户端在这半年内发起访问请求时所处的地域信息,更新一次用于保存客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,这样调度服务器能够及时确定出哪些后台服务器是保存有客户端历史行为数据的目标后台服务器,当接收到客户端发送的访问请求时,即可以根据客户端标识,确定出当前保存该客户端的历史行为数据的目标后台服务器,进而将该目标后台服务器对应的访问地址发送至该客户端,这样客户端基于该访问地址访问的目标后台服务器就能够为该客户端提供数据服务,即客户端成功连接了为能够为其提供数据服务的后台服务器,这样能够在保障正常访问的前提下,提高访问效率。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,应当理解,本公开中附图仅起到说明和描述的目的,并不用于限定本公开的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本公开中使用的流程图示出了根据本公开的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本公开内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
随着智能终端的发展,越来越多的应用程序(Application,App)应运而生,用户通过智能终端登录这些App所在的客户端时,客户端需要与后台服务器建立数据连接,比如针对新闻媒体的客户端,用户打开客户端后,可以通过后台服务器查阅新、评论或者转发新闻资讯,针对一些全球性的客户端,使用的用户数量较大,往往一个后台服务器无法满足用户需求,考虑到客户端的地域性,可以针对地域的不同,设置多个后台服务器。
当存在多个后台服务器时,当用户登录该客户端后,应该访问哪个后台服务器,一般可以有两种方式,第一种方式是提前在客户端设置好该客户端访问的后台服务器的访问地址,当用户登录客户端后,客户端基于提前设置好的访问地址访问对应的后台服务器;第二种方式是通过内容分发网络(Content Delivery Network,CDN)技术,根据客户端信息找到距离客户端最近的访问接入点。
上述第一种方式,若给该客户端提供数据服务的后台服务器的访问地址发生更改,就会导致客户端无法访问后台服务器,即登录失败,第二种方式并不适用一些非静态资源的访问,比如针对新闻媒体类型的客户端,静态资源包括视频浏览、图片浏览,非静态资源包括页面刷新、评论、点赞和收藏等,这些非静态资源的访问需要直接连接后台服务器,针对此,本公开提出一种访问请求处理方法,用于解决上述技术问题。
本公开实施例提供的一种访问请求处理方法,应用于调度服务器,调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移。
这里在介绍访问请求过程之前,首先介绍本公开提供的客户端的注册过程,用户在首次登录客户端进行注册时,客户端会向调度服务器发送注册请求,调度服务器能够根据该访问请求获取到该客户端的客户端标识,比如客户端ID,然后获取客户端注册时所处的地域信息,并将该客户端标识和客户端注册时所处的地域信息进行对应存储,比如可以存储于存储服务器中,并将与距离该地域信息距离最近的后台服务器作为用于保存该客户端行为数据的目标后台服务器,并将该目标后台服务器的访问地址发送至该客户端,客户端就可以基于该访问地址与目标后台服务器建立数据连接,进而完成注册,完成注册后,调度服务器可以将该客户端ID和该客户端注册的目标后台服务器对应存储,将该目标后台服务器作为给该客户端提供后续数据服务的后台服务器。
比如,客户端对应的后台服务器在全球设置有两个,分别是位于A国家的第一后台服务器和位于B国家的第二后台服务器,B国家的用户在首次登录客户端进行注册时,调度服务器能够从注册请求中确定该客户端的客户端ID,然后获取此时客户端所处的地域信息,并将该客户端ID和此时客户端所处的地域信息进行对应存储,比如确定该客户端ID与B国家对应,可以将该客户端ID与B国家对应存储于存储服务器中,并将将距离B国家最近的第二后台服务器作为用于保存该客户端的行为数据的目标后台服务器,并将第二后台服务器的访问地址发送至该客户端,此后客户端通过该访问地址访问第二后台服务器,并在第二后台服务器上完成注册,完成注册后,调度服务器可以将该客户端ID和该第二后台服务器对应存储,将该第二后台服务器作为给该客户端提供后续数据服务的后台服务器。
这里,调度服务器接收到注册请求或者访问请求时,一般情况下可以根据客户端的客户识别模块(Subscriber Identity Module,SIM)卡对应的运营商信息、客户端上设置的定位部件,比如全球定位系统(Global Positioning System,GPS),或者客户端互联网协议IP地址中的一种或多种来获取客户端的地域信息;在本公开实施例中,因为大部分用户在使用客户端的过程中,客户端所在的智能终端上会携带SIM卡,本公开实施例提出确定客户端的地域信息可以优先基于SIM卡注册时对应的运营商信息来确定。
在完成注册后,当接收到该客户端发送的访问请求时,就可以将该客户端ID对应的目标后台服务器的访问地址发送至该客户端,便于该客户端基于该访问地址进行访问。
进一步地,考虑到实际情况下,后台服务器的访问地址可能会发生变化,比如后台服务器的访问地址发生更改,或者,用户在后期使用客户端的过程中,注册时对应的后台服务器并不适合再为客户端提供数据服务,比如,用户远离原来的注册地址,导致原来注册时的后台服务器与客户端当前登录地域相隔距离变大,或者针对访问请求处理的服务器架构中增加了新的后台服务器,此时可以重新为用户的客户端确定更合适的后台服务器,在确定更合适的后台服务器的过程中,为了不影响客户端正常获取在历史访问过程中产生的历史行为数据,此时可以提前确定用于保存客户端的历史行为数据的目标后台服务器,以达到在不影响用户体验的前提下,为客户端确定最合适的目标后台服务器,然后再基于确定的目标后台服务器为客户端提供数据服务。
具体地,调度服务器能够周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,比如,上述用户在B国家注册客户端时,调度服务器为该客户端分配的目标后台服务器为与B国家对应的第二后台服务器,但是此后很长时间该用户登录客户端时均位于A国家,则可以认为该客户端大部分登录时间位于A国家,则考虑用于保存该客户端的历史行为数据的目标后台服务器可以由第二后台服务器更新为与A国家对应的第一后台服务器;当然,若此后很长时间该用户登录客户端时还是位于B国家,则用于保存该客户端的历史行为数据的目标后台服务器仍然为第二后台服务器。
调度服务器在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,比如若确定更新后的目标后台服务器为第一后台服务器,而更新前的目标后台服务器为第一后台服务器,则会通知第一后台服务器和第二后台服务器进行客户端历史行为数据的数据迁移,当目标后台服务器完成数据迁移后,调度服务器记录更新后的用于保存该客户端的历史行为数据的目标后台服务器的访问地址。
在一种实施方式中,调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,包括:
根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,将确定的该地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器;其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
这里通过确定当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,来确定更新后的用于保存客户端的历史行为数据的目标后台服务器,比如,当前时间周期为一年,调度服务器统计在距离当前时刻一年以内,客户端发起历史访问请求时所处的地域信息,比如所处的地域信息包括B国家、A国家和C国家,然后记录的该客户端在B国家发起访问请求的次数为10次,在A国家发起访问请求的次数为200次,在C国家发起访问请求的次数为2次,则可以将A国家对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器。
这里初始保存客户端的历史行为数据的后台服务器即用户在首次登录客户端进行注册时对应的后台服务器,比如可以是距离客户端在注册时所处地理位置最近的后台服务器。
特殊地,考虑到用户短时出差,在出差地域频繁登录客户端时,会导致短时间在出差所在地登录地址次数超过常驻地址,本公开实施例中调度服务器更新用于保存客户端的历史行为数据的目标后台服务器的周期可以设置的时间长一些,比如设置为一年更新一次,这样,即使用户在一年的时长内在非常驻地址登录过该客户端,因为在非常驻地址登录的次数未超过在常驻地址登录的次数,此时也并不会将非常驻地址对应的后台服务器确定为用于保存客户端的历史行为数据的目标后台服务器,这样可以避免因用户出差导致误判断用于保存客户端的历史行为数据的目标后台服务器发生更新的情况。
具体地,上述情况具体为:若用户在A地域注册客户端,并且用户的常驻地址为A地域,此时初始保存客户端的历史行为数据的后台服务器为与A地域对应的第一后台服务器,然后在一年内用户出差到B地域,此时B地域对应的后台服务器为第二后台服务器,若用户在B地域登录客户端,此时因为保存该用户客户端的历史行为数据仍然保存在第一后台服务器,则调度服务器仍然会将与A地域对应的第一后台服务器的访问地址发送至客户端,这样不会影响用户正常使用客户端。
考虑到另一种情况,用户在出差地进行的客户端注册,然后回到常驻地址后,仍然使用该客户端,此时在当前时间周期内,客户端在常驻地址发起历史访问请求的次数要远远多于在出差地发起历史访问请求的次数,所以可以确定更新后的用于保存客户端的历史行为数据的目标后台服务器与初始保存客户端的历史行为数据的后台服务器不一致,即可以通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移。
具体地,上述情况具体为:若常驻地址为A地域的用户在出差地B地域注册了客户端,此时初始保存客户端的历史行为数据的后台服务器为与B地域对应的第二后台服务器,然后在出差完毕后用户回到A地域,此时A地域对应的后台服务器为第一后台服务器,若用户在刚开始回到A地域后登录客户端,此时因为保存该用户客户端的历史行为数据仍然保存在第二后台服务器,则调度服务器仍然会将与B地域对应的第二后台服务器的访问地址发送至客户端,这样不会影响用户正常使用客户端,但是在到达一定周期时,比如一年后,确定该客户端在A地域登录的次数远远高于在B地域登录的次数,则可以确定用于保存该客户端的历史行为数据为与A地域对应的第一后台服务器,此时可以通知第一后台服务器和第二后台服务器进行客户端历史行为数据的数据迁移,以便客户端在A地域登录时,可以与距离A地域距离较近的第一后台服务器进行数据连接,从而在保证客户端能够正常访问的前提下,提高访问效率,改善用户体验。
在另一种实施方式中,调度服务器周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,包括:
(1)根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息。
这里通过设定阈值,可以确定出客户端在当前时间周期内,在哪些地域发起历史访问请求的次数较多,从而便于调度服务器确定更为合适的用于保存客户端的历史行为数据的目标后台服务器。
(2)若地域信息对应的候选后台服务器中包括当前保存客户端的历史行为数据的后台服务器,则仍然将当前保存客户端的历史行为数据的后台服务器作为更新后用于保存客户端的历史行为数据的目标后台服务器。
若步骤(1)中确定出的在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息包括当前保存客户端的历史行为数据的后台服务器,则说明客户端仍位于当前保存客户端的历史行为数据的后台服务器对应的地域,且在该地域仍然多次发起了历史访问请求,此时,可以将当前保存客户端的历史行为数据的后台服务器仍然作为更新后用于保存客户端的历史行为数据的目标后台服务器,即无需使得保存该客户端的历史行为数据的后台服务器进行更新,这样可以减少后台服务器进行更新的次数。
(3)若候选后台服务器中不包括当前保存客户端的历史行为数据的后台服务器,则将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器。
若步骤(1)中确定出的在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息不包括当前保存客户端的历史行为数据的后台服务器,则说明客户端可能不再位于当前保存客户端的历史行为数据的后台服务器对应的地域,此时可以将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器,具体原因如上文分析。
其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
比如,设定阈值为50次,统计在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息,比如超过设定阈值50次的地域信息包括三个,分别为B国家、C国家和A国家,其中B国家对应的次数为51次,C国家对应的次数为52次,A国家对应的次数为100次,则上述请情况可以解释为,若当前保存客户端的历史行为数据的后台服务器为C国家对应的后台服务器,则仍然将C国家对应的后台服务器作为更新后用于保存客户端的历史行为数据的目标后台服务器,若当前保存客户端的历史行为数据的后台服务器为D国家对应的后台服务器,则因为超过设定阈值50次的地域信息不包括D国家,此时可以将A国家对应的后台服务器作为更新后用于保存客户端的历史行为数据的目标后台服务器。
进一步地,针对上述情况,若更新前后的目标后台服务器不一致时,可以通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,具体地,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,包括:
若更新前后的目标后台服务器不一致,则向更新前的第一目标后台服务器发送第一数据迁移指示,第一数据迁移指示中包括客户端标识和第二目标后台服务器标识,用于指示第一目标后台服务器将与客户端标识对应的历史行为数据迁移至第二目标后台服务器;并向更新后的第二目标后台服务器发送第二数据迁移指示,第二数据迁移指示中包括客户端标识和第一目标后台服务器标识,用于指示第二目标后台服务器接收并存储来自第一目标后台服务器的、与客户端标识对应的历史行为数据。
用于保存客户端的历史行为数据的目标后台服务器按照上述方式进行数据迁移后,可以将迁移结果发送至调度服务器,比如更新前用于保存客户端的历史行为数据的目标后台服务器为B国家对应的第二目标后台服务器,更新后用于保存客户端的历史行为数据的目标后台服务器为A国家对应的第一目标后台服务器,当该客户端的历史行为数据由第二目标后台服务器迁移至第一目标后台服务器后,可以由第一目标后台服务器或者第二目标后台服务器将表征成功迁移的迁移结果发送至调度服务器。
以上过程是为了确保给客户端提供数据服务的后台服务器即为保存该客户端历史行为数据的后台服务器,从而便于用户可以正常使用客户端,另外,为了处理客户端发送的访问请求,调度服务器能够保存客户端标识与保存客户端历史行为数据的目标后台服务器的映射关系表,然后针对客户端发起的访问请求,为客户端分配最合适的目标服务器,下面将结合具体实施例阐述如何处理接收到的客户端发起的访问请求。
如图1所示,为本公开实施例提供的一种访问请求处理方法的流程图,访问请求处理方法包括以下具体步骤S101~S103:
S101,当接收到客户端发送的访问请求时,获取访问请求中包含的客户端标识。
这里的客户端是指与后台服务器相对,为用户提供本地服务的应用程序,比如可以是社交应用程序、新闻媒体应用程序等应用程序。
用户登录客户端后,客户端基于预先存储的调度服务器的访问地址,向该调服服务器发生访问请求,该访问请求包含有该客户端的客户端标识,比如客户端的ID号码,该访问请求用于请求访问客户端对应的服务器。
S102,基于客户端标识,确定当前保存客户端的历史行为数据的目标后台服务器。
调度服务器在接收到客户端发送的访问请求后,能够根据预先保存的客户端标识与当前保存客户端的历史行为数据的后台服务器的映射关系表,确定出当前保存该客户端的历史行为数据的目标后台服务器。
具体地,这里客户端标识与当前保存客户端的历史行为数据的后台服务器的映射关系表可以提前保存在存储服务器中,调度服务器在接收到客户端发送的访问请求后,可以通过存储服务器获取保存该客户端的历史行为数据的目标后台服务器。
这里客户端的历史行为数据是指客户端在历史使用过程中产生的数据,比如当客户端为新闻媒体应用程序,用户登录该客户端后转发、点赞、评论的数据内容。
S103,将目标后台服务器对应的访问地址发送至客户端,以使客户端基于访问地址向目标后台服务器发送访问请求。
这里的访问地址可以为目标后台服务器的域名地址,将该域名地址发送至客户端后,客户端就可以直接基于该域名地址访问对应的目标后台服务器。
进一步地,目标后台服务器为后台服务器集群;每个地域信息对应一个后台服务器集群,比如目标后台服务器是由若干个后台服务器构成的后台服务器集群,后台服务器集群在工作过程中,每台后台服务器剩余的负载能力大小不一,为了提高目标后台服务器响应客户端的速度,这里基于客户端标识,确定当前保存客户端的历史行为数据的目标后台服务器,包括:
基于客户端标识,确定周期性更新的用于保存客户端标识对应的历史行为数据的后台服务器集群;
将目标后台服务器对应的访问地址发送至客户端,包括:
根据后台服务器集群中各个后台服务器的负载情况,从后台服务器集群中选择一个后台服务器,将选择的后台服务器对应的访问地址发送至客户端。
通过该方式,可以在确定用于保存客户端标识对应的历史行为数据的后台服务器集群后,根据后台服务器集群中各个后台服务器剩余的负载能力,从后台服务器集群中选择剩余负载能力大的后台服务器,并将选择的后台服务器对应的访问地址发送至客户端,这样便于在客户端基于该访问地址访问选择的后台服务器时,后台服务器能够快速为该客户端提供数据服务。
下面结合图2以一种具体地实施方式阐述本公开提出的访问请求处理方法,如下:
ID号码为1010的客户端向调度服务器发起访问请求,调度服务器将该ID号码传输至存储服务器,存储服务器根据该ID号码查找出保存客户端的历史行为数据的目标后台服务器,并将保存客户端的历史行为数据的目标后台服务器的域名地址传输至调度服务器,调度服务器根据该目标后台服务器的域名地址发送至该客户端。
若保存客户端的历史行为数据的目标后台服务器为A国家对应的后台服务器,则调度服务器将A国家对应的后台服务器的域名地址“a.usa.com”发送至该客户端,该客户端基于域名地址“a.usa.com”访问A国家对应的后台服务器;若保存客户端的历史行为数据的目标后台服务器为B国家对应的后台服务器,则调度服务器将B国家对应的后台服务器的域名地址“a.sg.com”发送至该客户端,该客户端基于域名地址“a.sg.com”访问B国家对应的后台服务器。
本公开实施例还提供了一种访问请求处理装置300,如图3所示,该访问请求处理装置300驻留于调度服务器,该访问请求处理装置300包括更新模块301,更新模块301用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移;访问请求处理装置300还包括:
获取模块302,用于当接收到客户端发送的访问请求时,获取访问请求中包含的客户端标识;
确定模块303,用于基于客户端标识,确定当前保存客户端的历史行为数据的目标后台服务器;
发送模块304,用于将目标后台服务器对应的访问地址发送至客户端,以使客户端基于访问地址向目标后台服务器发送访问请求。
在一种实施方式中,更新模块301在用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器时,包括:
根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,将确定的该地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器;其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
在一种实施方式中,更新模块301在用于周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器时,包括:
根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息;
若地域信息对应的候选后台服务器中包括当前保存客户端的历史行为数据的后台服务器,则仍然将当前保存客户端的历史行为数据的后台服务器作为更新后用于保存客户端的历史行为数据的目标后台服务器;
若候选后台服务器中不包括当前保存客户端的历史行为数据的后台服务器,则将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器;
其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
在一种实施方式中,更新模块301在用于通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移时,包括:
若更新前后的目标后台服务器不一致,则向更新前的第一目标后台服务器发送第一数据迁移指示,第一数据迁移指示中包括客户端标识和第二目标后台服务器标识,用于指示第一目标后台服务器将与客户端标识对应的历史行为数据迁移至第二目标后台服务器;并向更新后的第二目标后台服务器发送第二数据迁移指示,第二数据迁移指示中包括客户端标识和第一目标后台服务器标识,用于指示第二目标后台服务器接收并存储来自第一目标后台服务器的、与客户端标识对应的历史行为数据。
在一种实施方式中,目标后台服务器为后台服务器集群;每个地域信息对应一个后台服务器集群;
确定模块303在用于基于客户端标识,确定当前保存客户端的历史行为数据的目标后台服务器时,包括:
基于客户端标识,确定周期性更新的用于保存客户端标识对应的历史行为数据的后台服务器集群;
发送模块304在用于将目标后台服务器对应的访问地址发送至客户端时,包括:
根据后台服务器集群中各个后台服务器的负载情况,从后台服务器集群中选择一个后台服务器,将选择的后台服务器对应的访问地址发送至客户端。
本公开实施例还提供了一种电子设备400,如图4所示,为本公开实施例提供的电子设备400的结构示意图,包括:处理器401、存储介质402、和总线403。存储介质402存储有处理器401可执行的机器可读指令(比如,图3中的装置中更新模块301、获取模块302、确定模块303和发送模块304对应的执行指令等),当电子设备400运行时,处理器401与存储介质402之间通过总线403通信,机器可读指令被处理器401执行时执行如下处理:
周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移;
当接收到客户端发送的访问请求时,获取访问请求中包含的客户端标识;
基于客户端标识,确定当前保存客户端的历史行为数据的目标后台服务器;
将目标后台服务器对应的访问地址发送至客户端,以使客户端基于访问地址向目标后台服务器发送访问请求。
一种可能的实施方式中,处理器401执行的指令中,包括:
根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起访问请求的次数最多的地域信息,将确定的该地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器;其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
一种可能的实施方式中,处理器401执行的指令中,包括:
根据在当前时间周期内,客户端发起历史访问请求时所处的地域信息,确定在当前时间周期内对应的客户端发起历史访问请求的次数超过设定阈值的地域信息;
若地域信息对应的候选后台服务器中包括当前保存客户端的历史行为数据的后台服务器,则仍然将当前保存客户端的历史行为数据的后台服务器作为更新后用于保存客户端的历史行为数据的目标后台服务器;
若候选后台服务器中不包括当前保存客户端的历史行为数据的后台服务器,则将对应的发起访问请求的次数最多的地域信息对应的后台服务器作为更新后的用于保存客户端的历史行为数据的目标后台服务器;
其中,初始保存客户端的历史行为数据的后台服务器为客户端的注册地域对应的后台服务器。
一种可能的实施方式中,处理器401执行的指令中,包括:
若更新前后的目标后台服务器不一致,则向更新前的第一目标后台服务器发送第一数据迁移指示,第一数据迁移指示中包括客户端标识和第二目标后台服务器标识,用于指示第一目标后台服务器将与客户端标识对应的历史行为数据迁移至第二目标后台服务器;并向更新后的第二目标后台服务器发送第二数据迁移指示,第二数据迁移指示中包括客户端标识和第一目标后台服务器标识,用于指示第二目标后台服务器接收并存储来自第一目标后台服务器的、与客户端标识对应的历史行为数据。
一种可能的实施方式中,目标后台服务器为后台服务器集群;每个地域信息对应一个后台服务器集群,处理器401执行的指令中,包括:
基于客户端标识,确定周期性更新的用于保存客户端标识对应的历史行为数据的后台服务器集群;
根据后台服务器集群中各个后台服务器的负载情况,从后台服务器集群中选择一个后台服务器,将选择的后台服务器对应的访问地址发送至客户端。
本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述访问请求处理方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述的访问请求处理方法,从而在保障客户端正常访问的前提下,提高访问效率。
本公开实施例提供的访问请求处理方法,应用于调度服务器,调度服务器能够周期性根据客户端发起历史访问请求时所处的地域信息,更新用于保存客户端的历史行为数据的目标后台服务器,比如每隔半年根据客户端在这半年内发起访问请求时所处的地域信息,更新一次用于保存客户端的历史行为数据的目标后台服务器,并在更新前后的目标后台服务器不一致时,通知更新前后的目标后台服务器进行客户端历史行为数据的数据迁移,这样调度服务器能够及时确定出哪些后台服务器是保存有客户端历史行为数据的目标后台服务器,当接收到客户端发送的访问请求时,即可以根据客户端标识,确定出当前保存该客户端的历史行为数据的目标后台服务器,进而将该目标后台服务器对应的访问地址发送至该客户端,这样客户端基于该访问地址访问的目标后台服务器就能够为该客户端提供数据服务,即客户端成功连接了为能够为其提供数据服务的后台服务器,这样能够在保障正常访问的前提下,提高访问效率。
本公开实施例所提供的进行访问请求处理方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
本公开实施例所提供的访问请求处理装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本公开实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本公开所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围。都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。