首页 > 技术文章 > 使用精灵代理ip最节约成本的策略!

liujinwen 2020-08-02 14:41 原文

使用ip代理业务用例

1.使用精灵代理(http://www.jinglingdaili.com/Shop-index.html),通过Api获取,每次返回一个固定时间(五分钟)的IP,然后将获取到的ip存入mongoDB数据库使用。

2.每次调用爬虫的时候,都会从数据库中拿到代理ip。①若ip失效则再次通过Api获取代理ip然后存入数据库②若数据库无代理ip,则通过Api获取代理ip然后存入数据库。

3.java实现流程

  • 方法testIp(ip):用来检测ip是否可用,返回值为true或者false

  • 方法getApiIp():通过Api获取代理ip,返回值是代理IP

  • 方法insertMongo(ip):将Api获取到的ip存入mongo数据库

  • 方法getmongo():从mongo数据库获取代理IP,返回值是代理ip

  • 方法deletemongo(ip):从mongo数据库删除ip

     

4.使用代理ip策略

if(getmongo()==null){
 ip =  getApiIp();
 insertMongo(ip)
}else{
  ip=getmongo()
  if(test(ip)==true){
      //使用这个代理ip
  }else{
      deletemongo(ip)
      ip =  getApiIp();
      insertMongo(ip)
      }
}

总结:这样的策略是运营成本最低的策略,每个ip都是固定有效时间5分钟,只有在使用的时候才会从api获取代理IP存入数据库,闲置的时候(00:00-08:00)可能没有用户使用就不需要代理IP,一个月如果24小时都在使用,成本是45元,如果是普通正常使用,应该在25元左右!

推荐阅读