网页访问请求处理方法和分配方法组成比例

技术编号:10493638 阅读:77 留言:0更新日期:2014-10-03 20:43
本发明专利技术公开了处理用户访问网页的请求的方法及系统,其中,在同一台代理服务器中预先启动至少两个进程,每个进程中创建至少两个处理单元,所述方法包括:在接收到多个用户访问网页的当前请求时,根据各个用户的属性信息以及各个进程的状态信息,为各个用户的当前请求分配进程;在所述分配的进程中为所述当前请求分配处理单元;通过所述分配的处理单元,向所述当前请求对应的网页服务器发送请求以获取网页内容,以便返回给客户端进行展现。能够在大用户量并发的情况下,提高代理服务器的响应速度。

【技术实现步骤摘要】
本专利技术专利申请是申请日为2012年05月02日、申请号为201210135416.5、名称为“处理用户访问网页的请求的方法及系统”的中国专利技术专利申请的分案申请。
本专利技术涉及计算机
,特别是涉及处理用户访问网页的请求的方法及系统。
技术介绍
浏览器是用来从网站获取网页内容的工具软件。一般而言,它必须具备解析网页上的各种元素的能力,解析完成之后,要进行页面各个元素的定位计算。然后,浏览器在调用基于平台的API来完成页面的绘制,最终页面上的各种元素才会显示在用户面前。这个过程在PC上是一个很顺畅的过程,但是在手机等移动终端上,由于移动通信技术的限制,目前移动终端上网不可能达到以太网所能够达到的传输速度,另外,由于一些移动终端的硬件处理能力有限,而渲染、排版和绘制网页页面会耗费大量的资源进行计算,对于这些处理能力有限的移动终端来说,需要消耗的时间和电量等开销就好比较大,为了解决这些问题,基于服务器渲染排版的技术便应运而生了。 该技术把耗时且费资源的操作封装在服务端,使用这种技术的浏览器通常被设计为c/s(客户端/代理服务器)架构。在这种架构下,用户访问网页的请求会被浏览器的客户端发送到代理服务器端,代理服务器向网页服务器发送访问网页的请求,并获取到网页资源之后,能够对大流量的资源进行压缩和处理,然后将压缩和处理过的数据发送至客户端,客户端只需对数据做简单的操作就能显示网页内容。这种轻客户端的模式降低了对移动终端的要求,但是又能够在移动终端用户使用的网络低速,以及移动设备的处理能力有限的情形下,也能获得比较好的用户体验。所以目前这种基于服务端渲染排版的模式在手机等移动终端使用的浏览器上大行其道,并且该技术向着客户端更轻量化、服务端更重量化的方向发展,例如,服务端负责大流量资源文件的压缩、页面的解析、页面的定位计算和页面的排版,以及将排版后的结构体转换为能够让客户端解析出来的二进制数据,这样客户端直接根据对这些二进制数据进行解析,然后进行相应的绘制及显示即可。这种发展方向有利于降低对移动终端硬件性能的要求,但是其缺点在于:由于服务端需要处理的工作大幅增加了,而所有使用其客户端的用户请求都会发送到服务端,由服务端进行处理,因此,在同一时间段内多个用户请求并发的情况下,可能会降低服务端的响应速度,结果反而降低了用户的移动终端上浏览器的响应速度。
技术实现思路
本专利技术提供了处理用户访问网页的请求的方法及系统,能够在大用户量并发的情况下,提高代理服务器的响应速度。 本专利技术提供了如下方案: —种处理用户访问网页的请求方法,在同一台代理服务器中预先启动至少两个进程,每个进程中创建至少两个处理单元,所述方法包括: 在接收到多个用户访问网页的当前请求时,根据各个用户的属性信息以及各个进程的状态信息,为各个用户的当前请求分配进程; 在所述分配的进程中为所述当前请求分配处理单元; 通过所述分配的处理单元,向所述当前请求对应的网页服务器发送请求以获取网页内容,以便返回给客户端进行展现。 其中,将同一用户的不同请求分配给同一进程。 其中,所述在接收到多个用户访问网页的当前请求时,根据各个用户的属性信息以及各个进程的状态信息,为各个用户的当前请求分配进程,包括: 根据各个用户的属性信息判断当前请求是否为新用户的请求; 如果当前请求不是新用户的请求,则根据该用户的分配历史以及各个进程的状态信息为所述当前请求分配进程。 其中,所述根据各个用户的属性信息判断当前请求是否为新用户的请求包括: 获取所述当前请求对应的用户的属性信息; 如果当前请求对应的用户的属性信息未出现在所述历史分配记录中,则所述当前请求为新用户的请求;其中,所述历史分配记录用于记录在历史处理过程中,用户请求对应的用户的属性信息与分配给该用户请求的进程之间的对应关系。 其中,所述如果当前请求不是新用户的请求,则根据该用户的分配历史以及各个进程的状态信息为所述当前请求分配进程,包括: 如果所述当前请求不是新用户的请求,并且历史分配记录中该用户的属性信息对应的进程包含空闲的处理单元,则将该进程分配给当前请求。 其中,所述历史分配记录中还记录有用户请求对应的用户的属性信息与分配给请求的处理单元之间的对应关系; 所述在分配的进程中为所述请求分配处理单元,包括: 将历史分配记录中该用户的属性信息对应的处理单元分配给当前请求。 其中,还包括: 如果当前请求是新用户的请求,则将当前具有最多空闲处理单元的进程分配给当前请求。 其中,还包括: 如果全部进程中都不存在空闲处理单元,则判断是否存在处理时间超时的处理单元,如果是,则将该处理单元所在的进程分配给当前请求; 所述在所述分配的进程中为所述当前请求分配处理单元包括: 将所述处理时间超时的处理单元的当前任务结束,并将其分配给当前请求。 其中,所述代理服务器为至少两个,所述方法还包括: 为各个用户的当前请求分配代理服务器。 其中,所述为各个用户的当前请求分配代理服务器包括: 对各代理服务器进行实时的心跳监控,将能够正常监测到心跳信息的代理服务器加入到可用代理服务器列表中; 从所述可用代理服务器列表中为当前请求分配代理服务器。 其中,还包括: 将未能监测到心跳信息的代理服务器从所述可用代理服务器列表中删除;当重新监测到代理服务器的心跳信息时,将其加入到所述可用代理服务器列表中。 一种处理用户访问网页的请求系统,在同一台代理服务器中预先启动至少两个进程,每个进程中创建至少两个处理单元,所述系统包括: 进程分配模块,用于在接收到多个用户访问网页的当前请求时,根据各个用户的属性信息以及各个进程的状态信息,为所述各个用户的当前请求分配进程; 处理单元分配模块,用于在所述分配的进程中为所述当前请求分配处理单元; 网页内容处理模块,用于通过所述分配的处理单元,向所述当前请求对应的网页服务器发送请求以获取网页内容,以便返回给客户端进行展现。 其中,将同一用户的不同请求分配给同一进程。 其中,所述进程分配模块包括: 判断子模块,用于根据各个用户的属性信息判断当前请求是否为新用户的请求; 进程分配子模块,用于如果当前请求不是新用户的请求,则根据该用户的分配历史以及各个进程的状态信息为所述当前请求分配进程。 其中,所述判断子模块包括: 用户标识获取子模块,用于获取所述当前请求对应的用户的属性信息; 比对子模块,用于如果当前请求对应的用户的属性信息未出现在所述历史分配记录中,则所述当前请求为新用户的请求;其中,所述历史分配记录用于记录在历史处理过程中,用户请求对应的用户的属性信息与分配给该用户请求的进程之间的对应关系。 其中,所述进程分配子模块具体用于: 如果所述当前请求不是新用户的请求,并且历史分配记录中该用户的属性信息对应的进程包含空闲的处理单元,则将该进程分配给当前请求。 其中,所述历史分配记录中还记录有用户请求对应的用户的属性信息与分配给请求的处理单元之间的对应关系; 所述处理单元分配模块具体用于: 将历史分配记录中该用户的属性信息对应的处理单元分配给当前请求。 其中,还包括: 新用户请求分配模块,用于如果当前请本文档来自技高网
...

【技术保护点】
一种网页访问请求处理方法,其包括:在同一台代理服务器中启动至少两个进程且在每个进程中创建至少两个处理单元;当接收到用户的网页访问请求时,将所述网页访问请求分配给一个已启动的进程;在所分配的进程中为所述网页访问请求分配一个已创建的处理单元;通过所分配的处理单元,向所述网页访问请求对应的网页服务器发送请求以获取网页内容。

【技术特征摘要】
1.一种网页访问请求处理方法,其包括: 在同一台代理服务器中启动至少两个进程且在每个进程中创建至少两个处理单元; 当接收到用户的网页访问请求时,将所述网页访问请求分配给一个已启动的进程; 在所分配的进程中为所述网页访问请求分配一个已创建的处理单元; 通过所分配的处理单元,向所述网页访问请求对应的网页服务器发送请求以获取网页内容。2.根据权利要求1所述的方 法,其中,将所述网页访问请求分配给一个已启动的进程进一步包括: 根据用户的属性信息判断所述网页访问请求是否为新用户的请求; 如果所述网页访问请求不是新用户的请求,则根据该用户的分配历史以及各个进程的状态信息为所述网页访问请求分配进程。3.根据权利要求2所述的方法,其中,根据用户的属性信息判断所述网页访问请求是否为新用户的请求进一步包括: 获取所述网页访问请求对应的用户的属性信息; 如果所述网页访问请求对应的用户的属性信息未出现在历史分配记录中,则所述网页访问请求为新用户的请求;其中,所述历史分配记录用于记录在历史处理过程中,用户请求对应的用户的属性信息与分配给该用户请求的进程之间的对应关系。4.根据权利要求3所述的方法,其中,如果所述网页访问请求不是新用户的请求,则根据该用户的分配历史以及各个进程的状态信息为所述网页访问请求分配进程进一步包括: 如果所述网页访问请求不是新用户的请求,并且历史分配记录中该用户的属性信息对应的进程包含空闲的处理单元,则将该进程分配给所述网页访问请求。5.根据权利要求3或4所述的方法,其中,所述历史分配记录中还记录有用户请求对应的用户的属性信息与分配给请求的处理单元之间的对应关系; 在所分配的进程中为所述网页访问请求分配一个已创建的处理单元进一步包括: 将历史分配记录中该用户的属性信息对应的处理单元分配给当前请求。6.根据权利要求2至5中任一项所述的方法,还包括: 如果所述网页访问请求是新用户的请求,则将当前具有最多空闲处理单元的进程分配给所述网页访问请求。7.根据权利要求6所述的方法,还包括: 如果全部进程中都不存在空闲处理单元,则判断是否存在处理时间超时的处理单元,如果是,则将该处理单元所在的进程分配给所述网页访问请求; 在所分配的进程中为所述网页访问请求分配一个已创建的处理单元包括: 将处理时间超时的处理单元的当前任务结束,并将其分配给所述网页访问请求。8.根据权利要求1至7中任一项所述的方法,其中,所述代理服务器为至少两个,所述方法还包括: 为用户的网页访问请求分配代理服务器。9.根据权利要求8所述的方法,其中,为用户的网页访问请求分配代理服务器包括: 对各代理服务器进行实时的心跳监控,将能够正常监测到心跳信息的代理服务器加入到可用代理服务器列表中; 从所述可用代理服务器列表中为所述网页访问请求分配代理服务器。10.根据权利要求9所述的方法,还包括...

【专利技术属性】
技术研发人员:刘华
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

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

1