处理数据请求及获取服务器信息的方法及装置的制造方法_4

文档序号:9790818阅读:来源:国知局
节省了业务数据处理的成本,且降低对各业务服务器的管理成本,提高了整个业务处理系统的业务处理能力,为前端用户提供高质量的业务服务提供保证。
[0131]本实施例的执行主体可为代理服务器及发现服务器,以下将以代理服务器及发现服务器为例进行实施例的阐述。
[0132]第一接收模块510接收来自前端业务的数据请求。
[0133]例如,用户使用终端设备的终端应用购买A商家的商品时,终端设备向代理服务器端发送购买A商家商品的数据请求,代理服务器接收来自前端的购买A商家商品的数据请求。
[0134]生成发送模块520根据数据请求生成用于获取与数据请求相匹配的业务服务器的相关信息的获取请求,并发送获取请求。
[0135]例如,代理服务器根据接收到的购买A商家商品的数据请求,生成用于获取与购买A商家商品的数据请求相匹配的业务服务器的相关信息的获取请求,并向发现服务器发送获取该业务服务器的请求。
[0136]其中,发现服务器接收到来自代理服务器的获取请求后,确定相匹配的业务服务器的相关信息的方式,将在图6所示的实施例中进行详细阐述。
[0137]接收发送模块530接收到发现服务器响应于获取请求返回的业务服务器的相关信息,基于业务服务器的相关信息将数据请求发送至相匹配的业务服务器。
[0138]其中,业务服务器的相关信息包括但不限于以下任一项:
[0139]业务服务器的标识信息;
[0140]业务服务器的IP地址。
[0141]例如,业务服务器的相关信息可包括业务服务器的包含唯一编号的标识信息和/或业务服务器的具体IP地址信息。
[0142]例如,代理服务器接收到响应于获取与购买A商家商品的数据请求返回的业务服务器Serverl的IP地址信息,基于Serverl的IP地址信息,代理服务器将来自前端业务的购买A商家商品的数据请求发送至相匹配的业务服务器Server I。
[0143]图6为本发明中另一实施例的一种服务器信息的获取的装置的结构示意图。
[0144]第二接收模块610接收用于获取与来自前端业务的数据请求相匹配的业务服务器的相关信息的获取请求;根据获取请求,获取确定模块620获取与数据请求对应的所有可用业务服务器的相关信息,并确定与数据请求相匹配的业务服务器;第一发送模块630发送相匹配的业务服务器的相关信息。
[0145]第二接收模块610接收用于获取与来自前端业务的数据请求相匹配的业务服务器的相关信息的获取请求。
[0146]例如,发现服务器接收代理服务器转发的来自前端业务的获取与购买A商家商品的数据请求相匹配的业务服务器的相关信息的获取请求,该获取请求用于获取相匹配的业务服务器的标识信息和IP地址。
[0147]根据获取请求,获取确定模块620获取与数据请求对应的所有可用业务服务器的相关信息,并确定与数据请求相匹配的业务服务器。
[0148]具体地,获取确定模块包括第一查找单元(图中未示出)。第一查找单元在存储的业务服务器信息列表中查找与数据请求对应的所有可用业务服务器的相关信息。
[0149]例如,发现服务器在本地已存储的业务服务器信息列表中查找与用于处理A商家购买业务的的数据请求对应的所有可用业务服务器的标识信息和IP地址,如Serverl、Server2和Server3以及相应的IP地址。
[0150]其中,业务服务器信息列表中记录多个业务服务器的相关信息,业务服务器的相关信息包括但不限于以下任一项:
[0151 ]业务服务器的标识信息;
[0152]业务服务器的IP地址。
[0153]例如,业务服务器的相关信息可包括业务服务器的包含唯一编号的标识信息和/或业务服务器的具体IP地址信息。
[0154]优选地,如图7所示,获取确定模块包括发送单元、生成单元722和第二查找单元。发送单元分别发送用于检测各个业务服务器的工作状态的检测指令;生成单元根据各个业务服务器对检测指令的响应生成业务服务器信息列表;第二查找单元在业务服务器信息列表中查找与数据请求对应的所有可用业务服务器的相关信息。
[0155]例如,发现服务器向各个业务服务器分别发送用于检测各个业务服务器的工作状态的检测指令,如发现服务器分别向每个业务服务器发送用于检测业务服务器的工作状态的心跳包;当发现服务器接收到各个业务服务器响应于心跳包的反馈响应时,可确定与反馈响应相对应的业务服务器工作状态为正常,基于处于正常工作状态的业务服务器的相关信息来生成业务服务器信息列表,其中,业务服务器信息列表中包括服务器的标识、可处理的数据业务类型及IP地址等;随后,在业务服务器信息列表中查找用于处理A商家购买业务的数据请求的所有可用业务服务器为服务器Serverl和Served,获取服务器Serverl和Server2的标识信息和IP地址。
[0156]在一优选实施例中,获取确定模块包括确定单元(图中未示出);确定单元对获取的与数据请求对应的所有可用业务服务器进行负载均衡,以确定与数据请求相匹配的业务服务器。
[0157]例如,发现服务器接收到4条购买A商家商品的数据请求Requestl、Request2、Request3和Request4,对获取的与数据请求对应的所有可用业务服务器Server]^PServer2进行负载均衡,可确定业务服务器Serverl处理数据请求Requestl和Request2,业务服务器Server2 处理数据请求 Reques t3 和Reques t4。
[0158]优选地,确定单元包括获取子单元(图中未示出)和确定子单元(图中未示出)。获取子单元6221获取各个业务服务器的业务分配权重;结合业务分配权重,确定子单元对获取的与数据请求对应的所有可用业务服务器进行负载均衡,以确定与数据请求相匹配的业务服务器。
[0159]例如,发现服务器接收到4条购买A商家商品的数据请求Requestl、Request2、Request3和Request4,获取到业务服务器361^61'1和361^612的处理购买4商家商品的业务分配权重为0.75和0.25,结合该业务分配权重,对获取的与购买A商家商品的数据请求对应的所有可用业务服务器Serverl和Server2进行负载均衡,可得到业务服务器Serverl可处理4*0.75条即3条该业务数据请求,服务器Serverf可处理4*0.25条即I条该业务数据请求,可确定业务服务器361^61'1处理数据请求1^卩11681:1、1^卩1168丨2和1^卩1168丨3,业务服务器Server2处理数据请求Request4。
[0160]在一优选实施例中,该装置还包括第二发送模块(图中未示出)和更新模块(图中未示出)。第二发送模块分别发送用于检测各个业务服务器的工作状态的检测指令;更新模块根据各个业务服务器对检测指令的响应更新可用业务服务器信息列表。
[0161]其中,更新模块具体包括:
[0162]若未接收到可用业务服务器信息列表中任一业务服务器针对检测指令的响应时,在服务器信息列表中删除该业务服务器的相关信息。
[0163]例如,发现服务器实时向各个业务服务器分别发送用于检测各个业务服务器的工作状态的检测指令,如发现服务器分别向每个业务服务器发送用于检测业务服务器的工作状态的心跳包;由于设备的物理故障或系统故障等原因造成业务服务器Serverf系统奔溃,导致此时业务服务器Serverf无法工作,因此将无法接收到业务服务器Serverf针对心跳包的反馈响应,则在服务器信息列表中删除业务服务器Serverf的相关信息,包括业务服务器Server2的标识、可处理的数据业务类型、和IP地址等。
[0164]在又一优选实施例中,该装置还包括添加模块(图中未示出);若接收到不包括在业务服务器信息列表中的任一业务服务器的广播消息时,添加模块在服务器信息列表中添加该业务服务器的相关信息。
[0165]例如,当接收到2亿条的用户支付信息的数据请求,从业务服务器信息列表中得到可处理用户支付业务的服务器为361^61'1和361^612,且361^61'1和361^612同时处理业务数据的总最高量为2.5亿条,因此,增加可处理用户支付业务的服务器Serverf,业务服务器Server3可处理业务数据的最高量为I亿条,Server3发送用于表明其工作状态的广播消息;当发现服务器接收到不包括在业务服务器信息列表中的业务服务器Serverf的广播消息后,在服务器信息列表中添加业务服务器Serverf的相关信息,包括业务服务器Serverf的标识如Serverf、可处理的数据业务类型如支付业务和IP地址等。
[0166]其中,业务服务器具体为运行在一个物理设备上的通过容器技术实现的独立操作系统。
[0167]例如,基于Linux容器技术实现的多服务器系统,在每个容器中装入独立的服务器系统,即每个服务器拥有各自的操作系统,多个服务器系统之间相互独立,且多个服务器系统运行在同一台物理终端设备上,如业务服务器361^61'1、561^612和561^613可运行在一个物理设备上,且业务服务器Server 1、Server2和Server3拥有各自的服务器系统。
[0168]第一发送模块630发现服务器发送相匹配的业务服务器的相关信息。
[0169]例如,发现服务器向代理服务器发送相匹配的业
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1