云代理服务器、云代理的纯异步数据传输方法及系统技术方案

技术编号:15749953 阅读:87 留言:0更新日期:2017-07-03 16:05
本发明专利技术提供了一种云代理服务器、云代理的纯异步数据传输方法及系统,该方法包括:异步接收来自多个客户端的连接请求消息;对所述多个连接请求消息进行异步处理,分别连接至对应的接收方;在连接成功之后,在各客户端与其对应的接收方之间异步进行数据传输。采用本发明专利技术中的方法,避免了调用线程阻塞的问题,保证了云代理服务的高性能,高并发,提高了云代理服务的响应性,进而提高了用户体验。

【技术实现步骤摘要】
云代理服务器、云代理的纯异步数据传输方法及系统
本专利技术涉及计算机
,特别是涉及一种云代理服务器、云代理的纯异步数据传输方法及系统。
技术介绍
代理(Proxy),也称网络代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过代理的服务与另一个网络终端(一般为服务器)进行非直接的连接,从而为客户端提供服务。随着云计算服务领域的发展壮大,云代理服务器(ProxyServer)已经慢慢成为云计算服务的重要组成部分,能够作为面向各类互联网用户提供综合业务能力的服务平台。在实际应用中,云代理服务器与普通代理手段相类似,集成于能够提供代理服务的电脑系统或其它类型的网络终端,进而为云网络中的客户端提供服务。实施时,一个完整的云代理请求过程为:首先,客户端与云代理服务器创建连接;其次,云代理服务器接收来自客户端的连接请求消息,进而根据云代理服务器所使用的代理协议,请求对目标服务器建立连接;最后,在云代理服务器与目标服务器间成功建立连接之后,获得目标服务器提供的相应资源。随着云计算服务领域的发展壮大,云网络中的客户端数量大大增加,同一云代理服务器下甚至可能管辖有高至数千万客户端,云代理服务器的多任务处理能力则可能成为一个瓶颈。若同一时刻有多条请求消息,此时就对云代理服务器的多任务处理功能提出较高的要求,若无法多任务处理,就容易造成云代理服务器负载过重,网络阻塞。而为多任务重新开启新的处理进程甚至增加新的云代理服务器,则会给系统带来额外负担,增加成本。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的云代理服务器、云代理的纯异步数据传输方法及系统。基于本专利技术的一个方面,提供了一种云代理的纯异步数据传输方法,应用于云代理服务器,包括:异步接收来自多个客户端的多个连接请求消息;对所述多个连接请求消息进行异步处理,分别连接至对应的接收方;在连接成功之后,在各客户端与其对应的接收方之间异步进行数据传输。可选地,对所述多个连接请求消息进行异步处理,包括:异步读取各连接请求消息的请求报文头部,直至各请求报文头部被完整收取;根据各请求报文头部的内容确定各连接请求消息所对应的接收方。可选地,所述分别连接至对应的接收方,包括:当接收方为服务器端时,为各客户端异步向DNS服务器请求对应的远端服务器的地址;接收所述DNS服务器返回的各远端服务器的地址,并分别异步连接。可选地,所述在各客户端与其对应的接收方之间异步进行数据传输,包括:异步接收各客户端的请求体body,并转发至对应的接收方;异步接收各接收方返回的数据,并转发至对应的客户端。可选地,所述异步接收各客户端的请求体body,并转发至对应的接收方,包括:异步接收各客户端的body;将接收的body异步保存至第一存储器中;异步判断各客户端的body是否接收完毕;若是,则将接收完毕的body转发至对应的接收方。可选地,所述异步接收各接收方返回的数据,并转发至对应的客户端,包括:当接收方为服务器端时,异步接收各远端服务器返回的数据;将接收的数据异步保存至第二存储器中;异步判断是否对各远端服务器的数据接收完毕;若是,则将接收完毕的数据一次性转发至对应的客户端。可选地,所述第一存储器和/或所述第二存储器包括缓存和/或内存。基于本专利技术的另一个方面,还提供了一种云代理服务器,包括:异步接收模块,适于异步接收来自多个客户端的多个连接请求消息;异步连接模块,适于对所述多个连接请求消息进行异步处理,分别连接至对应的接收方;异步传输模块,适于在连接成功之后,在各客户端与其对应的接收方之间异步进行数据传输。可选地,所述异步连接模块还适于:异步读取各连接请求消息的请求报文头部,直至各请求报文头部被完整收取;根据各请求报文头部的内容确定各连接请求消息所对应的接收方。可选地,所述异步连接模块还适于:当接收方为服务器端时,为各客户端异步向DNS服务器请求对应的远端服务器的地址;接收所述DNS服务器返回的各远端服务器的地址,并分别异步连接。可选地,所述异步传输模块还适于:异步接收各客户端的请求体body,并转发至对应的接收方;异步接收各接收方返回的数据,并转发至对应的客户端。可选地,所述异步接收模块还适于:异步接收各客户端的body;所述云代理服务器还包括:第一存储器,适于保存所述异步接收模块接收的数据;所述异步传输模块还适于:异步判断各客户端的body是否接收完毕;若是,则将接收完毕的body转发至对应的接收方。可选地,所述异步接收模块还适于:当接收方为服务器端时,异步接收各远端服务器返回的数据;所述云代理服务器还包括:第二存储器,适于保存所述异步接收模块接收的数据;所述异步传输模块还适于:异步判断是否对各远端服务器的数据接收完毕;若是,则将接收完毕的数据一次性转发至对应的客户端。基于本专利技术的另一个方面,还提供了一种纯异步数据传输系统,包括:多个客户端,适于发起连接请求消息;还包括上述任一项云代理服务器。采用本专利技术实施例提供的方法,接收多个客户端的多个连接请求,对多个连接请求进行处理,连接至对应的接收方,以及在客户端与其对应的接收方之间进行数据传输,以上每一个执行环节均是异步进行。异步执行使得每一个执行环节不用阻塞当前线程来等待处理完成,而是使用异步回调其他线程的方式进行处理,当其他线程完成操作处于空闲状态时,回调通知空闲线程,使得空闲线程能够得到充分利用。由此可见,异步执行的方式使得线程调用更为灵活,避免过于集中于某一个或某几个线程所造成的网络堵塞甚至崩溃,保证了云代理服务的高性能,高并发,提高了云代理服务的响应性,进而提高了用户体验。另外,异步执行避免了调用线程阻塞的问题,进而避免了某条线程阻塞导致网络崩溃的问题,也避免了某一条线程堵塞,而其他线程处于闲置状态的问题,使得网络资源能够得到充分利用。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的云代理的网址访问方法的处理流程图;图2示出了根据本专利技术一个实施例的获取客户端请求消息对应的接收方地址以及将地址与黑名单比对方法的处理流程图;图3示出了根据本专利技术一个实施例的云代理的网址访问装置的结构示意图;图4示出了根据本专利技术一个实施例的云代理的网址访问装置的另一种结构示意图;图5示出了根据本专利技术一个实施例的数据获取方法的处理流程图;图6示出了根据本专利技术一个优选实施例的数据获取方法的另一种处理流程图;图7示出了根据本专利技术一个实施例的数据获取装置的结构示意图;图8示出了根据本专利技术一个实施例的数据获取装置的另一种结构示意图;图9示出了根据本专利技术一个实施例的云代理的纯异步数据传输方法的处理流程图;图本文档来自技高网...
云代理服务器、云代理的纯异步数据传输方法及系统

【技术保护点】
一种云代理的纯异步数据传输方法,应用于云代理服务器,包括:异步接收来自多个客户端的多个连接请求消息;对所述多个连接请求消息进行异步处理,分别连接至对应的接收方;在连接成功之后,在各客户端与其对应的接收方之间异步进行数据传输。

【技术特征摘要】
1.一种云代理的纯异步数据传输方法,应用于云代理服务器,包括:异步接收来自多个客户端的多个连接请求消息;对所述多个连接请求消息进行异步处理,分别连接至对应的接收方;在连接成功之后,在各客户端与其对应的接收方之间异步进行数据传输。2.根据权利要求1所述的方法,其中,对所述多个连接请求消息进行异步处理,包括:异步读取各连接请求消息的请求报文头部,直至各请求报文头部被完整收取;根据各请求报文头部的内容确定各连接请求消息所对应的接收方。3.根据权利要求1或2所述的方法,其中,所述分别连接至对应的接收方,包括:当接收方为服务器端时,为各客户端异步向DNS服务器请求对应的远端服务器的地址;接收所述DNS服务器返回的各远端服务器的地址,并分别异步连接。4.根据权利要求1-3任一项所述的方法,其中,所述在各客户端与其对应的接收方之间异步进行数据传输,包括:异步接收各客户端的请求体body,并转发至对应的接收方;异步接收各接收方返回的数据,并转发至对应的客户端。5.根据权利要求1-4任一项所述的方法,其中,所述异步接收各客户端的请求体body,并转发至对应的接收方,包括:异步接收各客户端的body;将接收的body异步保存至第一存储器...

【专利技术属性】
技术研发人员:游九龙陈卫哨张华刘志祥
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京,11

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

1