The invention discloses a method and apparatus for selecting a middleware server based on the background, the method comprises: receiving the client sends the service request; generating a first random number in the preset range, the preset range includes a first numerical value range; if the first random number in the first range, according to the response time of each server the server list recently a preset period of time selecting a server; the service request will be forwarded to the selected server. By this method, by using the response time of each server has a preset period of time to select the server, you can achieve load balancing server system, improve the stability of the system; and because only when the first random number in the first range of values, only need to compute the response time of the server has a preset period of time, and so on to a certain extent, reduce the amount of computing resources and computing system share, improve the efficiency of server system processing tasks.
【技术实现步骤摘要】
本专利技术涉及计算机网络
,具体涉及一种基于中间件实现的后台服务器选择方法及装置。
技术介绍
中间件位于数据管理层和用户界面层之间,它可以为处于操作系统和应用程序之间的通信平台,也可以是应用平台与后台数据库之间的数据通信媒介等。其中,中间件也可位于客户端和服务器之间,可以完成对事物的管理与协调等任务。中间件在接收到客户端发送的新的请求后常采用轮询的方式将请求发送至服务器,或者通过统计当前服务器与客户端的连接数将新的请求发送至当前连接数最少的服务器。但是,采用轮询的方法常会出现部分服务器过载甚至宕机的现象,而与客户端连接数的多少并未能有效反映服务器处理任务的能力,也会造成严重的负载失衡,降低系统处理事物的效率及资源利用率,并降低了系统的稳定性。而且,当以某一性能参数表征服务器处理任务能力,常采用穷举的方法,即计算所有服务器的性能参数,来寻求较优的服务器。此种方法会增加整个系统的运算量,额外占用系统较多的运算资源,降低系统处理事物的效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的基于中间件实现的后台服务器选择方法及装置。根据本专利技术的一个方面,提供了一种基于中间件实现的后台服务器选择方法,其包括:接收客户端发送的业务请求;在预设数值范围内生成一第一随机数,所述预设数值范围包含第一数值范围;若所述第一随机数落入第一数值范围内,根据服务器列表中各个服务器最近的预设时间段内的响应时间选取一服务器;将所述业务请求转发给所选取的服务器。可选的,所述预设数值范围包含第二数值范围,所述方法还包括:若所述第一随机数 ...
【技术保护点】
一种基于中间件实现的后台服务器选择方法,包括:接收客户端发送的业务请求;在预设数值范围内生成一第一随机数,所述预设数值范围包含第一数值范围;若所述第一随机数落入第一数值范围内,根据服务器列表中各个服务器最近的预设时间段内的响应时间选取一服务器;将所述业务请求转发给所选取的服务器。
【技术特征摘要】
1.一种基于中间件实现的后台服务器选择方法,包括:接收客户端发送的业务请求;在预设数值范围内生成一第一随机数,所述预设数值范围包含第一数值范围;若所述第一随机数落入第一数值范围内,根据服务器列表中各个服务器最近的预设时间段内的响应时间选取一服务器;将所述业务请求转发给所选取的服务器。2.根据权利要求1所述的方法,其中,所述预设数值范围包含第二数值范围,所述方法还包括:若所述第一随机数落入第二数值范围内,在服务器列表中随机或顺次选取一服务器。3.根据权利要求2所述的方法,其中,所述预设数值范围为[0,1],所述第二数值范围为[0,ε],所述第一数值范围为(ε,1],其中ε为根据之前服务器的选择情况预先设置的值。4.根据权利要求2所述的方法,其中,所述在服务器列表中顺次选取一服务器进一步包括:查询上一次第一随机数落入第二数值范围时所选取的服务器;在服务器列表中选取排序紧邻在上一次第一随机数落入第一数值范围时所选取的服务器之后的服务器。5.根据权利要求1-3中任一项所述的方法,其中,所述根据服务器列表中各个服务器最近的预设时间段内的响应时间选取一服务器进一步包括:计算各个服务器在最近的预设时间段内的响应时间参数;选取所述各个服务器在最近的预设时间段内的响应时间参数最小的服务器。6.根据权利要求1-3中任一项所述的方法,其中,所述根据服务器列表中各个服务器最近的预设时间段内的响应时间选取一服务器进一步包括:计算各个服务器在最近的预设时间段内的响应时间参数;对各个服务器在最近的预设时间段内的响应时间参数进行归一化处理,得到归一化处理后的响应时间参数T1,T2…,Ti,…,Tn,其中Ti为在服务器列表中排在第i位的服务器的归一化处理后的响应时间参数;根据归一化的...
【专利技术属性】
技术研发人员:邓怡豪,
申请(专利权)人:北京奇虎科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。