一种动态IP代理池及其搭建及管理方法转让专利

申请号 : CN201610874527.6

文献号 : CN106254579B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘洋牟杰

申请人 : 携程计算机技术(上海)有限公司

摘要 :

本发明公开了一种动态IP代理池及其搭建及管理方法,具体包含:中央服务器接收心跳请求,当发送心跳请求的客户端在不可用代理池中时,发送获取指令至客户端;客户端获得代理IP地址,将代理IP地址发送至中央服务器;中央服务器将客户端的属性信息及其对应的代理IP地址放入可用代理池。当发送心跳请求的客户端在可用代理池时,发送相关执行指令至客户端。本发明通过上述技术方案能够提供一种稳定且高效的IP代理系统及服务;并有针对性地对目标网站进行动态配置和优化,加快访问速度;有效地提高了数据采集效率、稳定性及灵活性。

权利要求 :

1.一种动态IP代理池的搭建方法,其特征在于,所述动态IP代理池的搭建方法包含:中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端;所述获取指令包含命令所述客户端获取相应的代理IP地址;

所述客户端获得所述代理IP地址,将所述代理IP地址发送至所述中央服务器;

所述中央服务器将所述客户端的属性信息及其对应的所述代理IP地址放入可用代理池。

2.如权利要求1所述的动态IP代理池的搭建方法,其特征在于,所述中央服务器内设有所述不可用代理池、所述可用代理池;

所述可用代理池内包含多个可用的所述客户端的属性信息、所述代理IP地址,所述不可用代理池内设有多个不可用的所述客户端的所述属性信息。

3.如权利要求2所述的动态IP代理池的搭建方法,其特征在于,所述中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端,具体包含:当所述心跳请求包含的所述客户端的属性信息存在于所述不可用代理池中时,所述中央服务器发送所述获取指令至所述客户端。

4.如权利要求2所述的动态IP代理池的搭建方法,其特征在于,在所述中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端之前,所述动态IP代理池的搭建方法还包含:当任一所述客户端发送的最新的所述心跳请求的时间超过设定心跳请求阈值时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池;

当调用端反馈任一所述客户端存在网络连接问题时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池;

当任一所述客户端到达更换代理IP地址时间阈值时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池。

5.如权利要求2所述的动态IP代理池的搭建方法,其特征在于,所述中央服务器将所述客户端及其对应的所述代理IP地址放入可用代理池,具体包含:将所述客户端的属性信息从所述不可用代理池移动至所述可用代理池,并在所述可用代理池中保存所述客户端的所述代理IP地址。

6.如权利要求2所述的动态IP代理池的搭建方法,其特征在于,所述动态IP代理池的搭建方法还包含:一个或多个调用端获取所述中央服务器的所述可用代理池中的一个或多个所述代理IP地址进行网络访问。

7.一种动态IP代理池,其特征在于,所述动态IP代理池包含:至少一个客户端、至少一个中央服务器;

至少一个客户端,发送心跳请求;

至少一个中央服务器,包含可用代理池、不可用代理池;

在动态IP代理池的搭建的过程中:

所述至少一个中央服务器接收所述至少一个客户端发送的所述心跳请求,当所述至少一个客户端是在所述不可用代理池时,发送获取指令至所述客户端;所述获取指令包含命令所述客户端获取相应的代理IP地址;

所述至少一个客户端,获得所述代理IP地址,将所述代理IP地址发送至所述至少一个中央服务器;

所述至少一个中央服务器,将所述至少一个客户端及其对应的所述代理IP地址放入所述可用代理池;

在动态IP代理池的管理过程中:

所述至少一个中央服务器接收所述至少一个客户端发送的所述心跳请求,当所述至少一个客户端是在所述可用代理池时,发送相关执行指令至所述至少一个客户端;所述相关执行指令包含:客户端重启、所述获取指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。

8.如权利要求7所述的动态IP代理池,其特征在于,所述动态IP代理池还包含:至少一个调用端,用于获取所述中央服务器的所述可用代理池中所述代理IP地址、以及向所述中央服务器反馈任一所述客户端存在网络连接问题。

说明书 :

一种动态IP代理池及其搭建及管理方法

技术领域

[0001] 本发明涉及网络通信领域,具体涉及一种动态IP代理池及其搭建及管理方法。

背景技术

[0002] 动态IP地址指用户在访问互联网时,通过运营商随机分配的IP地址进行网络访问。目前使用动态IP的方式分为Modem、ISDN、ADSL、有线宽频、小区宽带等。动态IP地址的用途广泛,例如:网络投票、数据采集、上网加速等方式。
[0003] 现有技术中,以数据采集来说,通过固定的IP访问目标网站进行大规模的数据采集时,很容易造成IP封锁。此时如果采用动态IP地址访问,目标网站无法分析IP访问特征,并且难以封锁当前的数据采集行为。
[0004] 现有技术中,由于一些免费的代理IP使用时,难以保证使用的稳定性以及可控制方案。并且这种代理没有针对目标网站进行优化,导致访问速度慢或者匿名性较差。因此不能稳定的保障大规模数据采集问题,无法完成动态IP代理的使用简单方便的特性。

发明内容

[0005] 本发明的目的在于为了解决现有技术中在数据采集过程中遇到的IP被封锁情况的出现;提供一种动态IP代理池及其搭建及管理方法。
[0006] 为了达到上述目的,本发明通过以下技术方案实现:
[0007] 一种动态IP代理池的搭建方法,所述动态IP代理池的搭建方法包含:
[0008] 中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端;所述获取指令包含命令所述客户端获取相应的代理IP地址;
[0009] 所述客户端获得所述代理IP地址,将所述代理IP地址发送至所述中央服务器;
[0010] 所述中央服务器将所述客户端的属性信息及其对应的所述代理IP地址放入可用代理池。
[0011] 较佳地,所述中央服务器内设有所述不可用代理池、可用代理池;
[0012] 所述可用代理池内包含多个可用的所述客户端的属性信息、所述代理IP地址,所述不可用代理池内设有多个不可用的所述客户端的所述属性信息。
[0013] 较佳地,所述中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端,具体包含:
[0014] 当所述心跳请求包含的所述客户端的属性信息存在于所述不可用代理池中时,所述中央服务器发送所述获取指令至所述客户端。
[0015] 较佳地,在所述中央服务器接收心跳请求,当发送所述心跳请求的客户端在不可用代理池中时,发送获取指令至所述客户端之前,所述动态IP代理池的搭建方法还包含:
[0016] 当任一所述客户端发送的最新的所述心跳请求的时间超过设定心跳请求阈值时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池;
[0017] 当调用端反馈任一所述客户端存在网络连接问题时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池;
[0018] 当任一所述客户端到达更换代理IP地址时间阈值时,将所述客户端的属性信息从所述可用代理池移动至所述不可用代理池。
[0019] 较佳地,所述中央服务器将所述客户端及其对应的所述代理IP地址放入可用代理池,具体包含:
[0020] 将所述客户端的属性信息从所述不可用代理池移动至所述可用代理池,并在所述可用代理池中保存所述客户端的所述代理IP地址。
[0021] 较佳地,所述动态IP代理池的搭建方法还包含:
[0022] 一个或多个调用端获取所述中央服务器的所述可用代理池中的一个或多个所述代理IP地址进行网络访问。
[0023] 一种动态IP代理池的管理方法,所述动态IP代理池的管理方法包含:
[0024] 中央服务器接收心跳请求;
[0025] 当发送所述心跳请求的客户端在可用代理池时,所述中央服务器发送相关执行指令至所述客户端;所述相关执行指令包含:客户端重启、拨号指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。
[0026] 一种动态IP代理池,所述动态IP代理池包含:至少一个客户端、至少一个中央服务器;
[0027] 至少一个客户端,发送心跳请求;
[0028] 至少一个中央服务器,包含可用代理池、不可用代理池;
[0029] 在动态IP代理池的搭建的过程中:
[0030] 所述至少一个中央服务器接收所述至少一个客户端发送的所述心跳请求,当所述至少一个客户端是在所述不可用代理池时,发送获取指令至所述客户端;所述获取指令包含命令所述客户端获取相应的代理IP地址;
[0031] 所述至少一个客户端,获得所述代理IP地址,将所述代理IP地址发送至所述至少一个中央服务器;
[0032] 所述至少一个中央服务器,将所述至少一个客户端及其对应的所述代理IP地址放入所述可用代理池;
[0033] 在动态IP代理池的管理过程中:
[0034] 所述至少一个中央服务器接收所述至少一个客户端发送的所述心跳请求,当所述至少一个客户端是在所述可用代理池时,发送相关执行指令至所述至少一个客户端;所述相关执行指令包含:客户端重启、所述获取指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。
[0035] 较佳地,所述动态IP代理池还包含:至少一个调用端,用于获取所述中央服务器的所述可用代理池中所述代理IP地址、以及向所述中央服务器反馈任一所述客户端存在网络连接问题。
[0036] 在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
[0037] 本发明的积极进步效果在于:
[0038] 本发明公开的一种动态IP代理池及其搭建及管理方法,通过至少一个客户端、至少一个中央服务器以及至少一个调用端建立动态IP代理池。动态IP代理池的搭建及管理具体包含:中央服务器接收心跳请求,当发送心跳请求的客户端在不可用代理池中时,发送获取指令至客户端;客户端进行获得代理IP地址,将代理IP地址发送至中央服务器;中央服务器将客户端的属性信息及其对应的代理IP地址放入可用代理池。当发送心跳请求的客户端在可用代理池时,发送相关执行指令至客户端;相关执行指令包含:客户端重启、获取指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。本发明通过上述技术方案能够提供一种稳定且高效的IP代理系统及服务;并有针对性地对目标网站进行动态配置和优化,加快访问速度;有效地提高了数据采集效率、稳定性及灵活性。

附图说明

[0039] 图1为本发明一种动态IP代理池的搭建方法的整体流程示意图。
[0040] 图2为本发明一种动态IP代理池的管理方法的整体流程示意图。
[0041] 图3为本发明一种动态IP代理池的实施例示意图。

具体实施方式

[0042] 下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0043] 实施例1
[0044] 如图1、图3所示,一种动态IP代理池的搭建方法,动态IP代理池的搭建方法包含:
[0045] 本发明中,中央服务器1内设有不可用代理池、可用代理池。其中,可用代理池内包含多个可用的客户端2的属性信息、每个客户端2对应的代理IP地址,不可用代理池内设有多个不可用的客户端2的属性信息。
[0046] 本实施例中,在中央服务器1中,基于缓存数据库定义了不可用代理池、可用代理池的概念。
[0047] 在步骤S1之前,具体包含:
[0048] 当任一客户端2发送的最新的心跳请求的时间超过设定心跳请求阈值时,将客户端2的属性信息从可用代理池移动至不可用代理池。
[0049] 本实施例中,当任一客户端2发送的最新的心跳请求的时间超过设定心跳请求阈值时,该客户端2被标记为不可用代理,并将该客户端2的属性信息从可用代理池移动至不可用代理池。从而能够有效地保证调用端3获取的代理IP地址均是稳定、有效的。
[0050] 本实施例中,中央服务器1通过计算当前可用代理池中客户端2的数量和代理IP地址的使用时间,主动进行代理IP地址的更换。通过定时任务的方式,将部分客户端2移动至不可用代理池,此时该调用端3不会继续获取到该客户端2的代理IP地址。
[0051] 当调用端3反馈任一客户端2存在网络连接问题时,该客户端2被标记为不可用代理,将该客户端2的属性信息从可用代理池移动至不可用代理池。
[0052] 当任一客户端2到达更换代理IP地址时间阈值时,该客户端2被标记为不可用代理,将该客户端2的当前代理IP地址删除、并将属性信息从可用代理池移动至不可用代理池。
[0053] 本实施例中,可用代理池、不可用代理池的信息实际保存至数据库4中。当查看可用代理池、不可用代理池中的信息时,实际通过数据库4进行查看。
[0054] S1,中央服务器1接收心跳请求,当发送心跳请求的客户端2在不可用代理池中时,发送获取指令至客户端2。该步骤S1具体包含:
[0055] 当心跳请求包含的客户端2的属性信息存在于不可用代理池中时,中央服务器1发送获取指令至客户端2。
[0056] 本发明中,获取指令包含命令客户端获取相应的代理IP地址。
[0057] 本实施例中,客户端2通过定时轮训,定时向中央服务器1发送心跳请求进行心跳汇报。
[0058] 心跳请求包含客户端2的属性信息。中央服务器1根据心跳请求中的属性信息判断该客户端2是否在不可用代理池中,当判断客户端2是在不可用代理池时,中央服务器1发送获取指令至客户端2。
[0059] S2,客户端2获得代理IP地址,将代理IP地址发送至中央服务器1。
[0060] 本实施例中,客户端2执行获取命令,采用拨号的方式获取代理IP地址。
[0061] S3,中央服务器1将客户端2的属性信息及其对应的代理IP地址放入可用代理池。步骤S3具体包含:
[0062] 将客户端2的属性信息从不可用代理池移动至可用代理池,并在可用代理池中保存客户端2的代理IP地址。
[0063] 本实施例中,在步骤S3之后还包含:
[0064] 当一个或多个调用端3进行互联网访问时,调用端3通过获取中央服务器1的可用代理池中的一个或多个代理IP地址进行网络访问。
[0065] 实施例2
[0066] 如图2、图3所示,一种动态IP代理池的管理方法,动态IP代理池的管理方法包含:
[0067] M1,接收并显示心跳请求。
[0068] 本实施例中,客户端2通过定时轮训,定时向中央服务器1发送心跳请求进行心跳汇报。中央服务器1接收并显示客户端2发送的心跳请求。
[0069] M2,当发送心跳请求的客户端2在可用代理池时,发送相关执行指令至客户端2;相关执行指令包含:客户端2重启、拨号指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。
[0070] 本实施例中,相关执行指令包含:客户端2重启、进行ADSL拨号等。
[0071] 实施例3
[0072] 如图3所示,一种动态IP代理池,动态IP代理池包含:至少一个客户端2、至少一个中央服务器1、调用端3以及数据库4。其中,至少一个中央服务器1,包含可用代理池、不可用代理池。
[0073] 调用端3用于向中央服务器1反馈任一客户端2存在网络连接问题时,中央服务器1将该客户端2被标记为不可用代理,将该客户端2的属性信息从可用代理池移动至不可用代理池。
[0074] 数据库4用于分别存储可用代理池、不可用代理池中的相应信息。
[0075] 当进行动态IP代理池搭建时,至少一个客户端2发送心跳请求至到至少一个中央服务器1。当判断至少一个客户端2是在不可用代理池时,发送获取指令到至少一个客户端2;至少一个客户端2,获得代理IP地址,将代理IP地址发送到至少一个中央服务器1。至少一个调用端3,用于获取中央服务器1的可用代理池中代理IP地址、以及向所述中央服务器反馈任一所述客户端存在网络连接问题。
[0076] 当进行动态IP代理池管理时,至少一个客户端2发送心跳请求;至少一个中央服务器1接收至少一个客户端2发送的心跳请求,当至少一个客户端2是在可用代理池时,发送相关执行指令到至少一个客户端2;相关执行指令包含:客户端2重启、获取指令、关闭代理服务、更新配置文件、目标网站访问黑白名单之中任意一项。
[0077] 本发明中,动态IP代理池管理还包含多个中央服务器1形成中央服务器集群;多个客户端2分别与对应的中央服务器1进行信息通信。
[0078] 虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。