sxbyl 发表于 2013-2-1 15:10:51

Amazon Product API调用限制的解决办法

貌似没多少人用Prouct API,不过一旦使用Product API,就涉及到调用限制的问题,比如一秒一个调用。几年前我用了个解决方法,现在看看,貌似还能用。其实方法很简单,他那个限制是基于IP的,一个IP一秒钟调用一个,四五个IP就能调用四五次了,像VPS这种外部IP加起来很容易。至于怎么用指定的IP去调用API,那就看自己的程序了。复杂点,但可控性好的,就是自己用代码控制,用可以绑定本地IP地址发送请求的WebService调用库,这也是我几年前用得方法,简单点的,找一个支持多用户认证,多IP地址出口的代理服务程序装自己的服务器上,然后每次调用的时候切换不同的代理。调用WebService时指定代理估计都很简单。

minlab 发表于 2013-2-1 15:35:19

实现这个办法不是一般人能解决的。
还是膜拜一下程序员大神

bindiry 发表于 2013-2-1 18:58:34

申请多个key不行么?

sxbyl 发表于 2013-2-1 21:16:57

bindiry 发表于 2013-2-1 18:58 static/image/common/back.gif
申请多个key不行么?

这个还真没试过

daoday 发表于 2013-2-2 18:34:41

程序猿啊

webflier 发表于 2013-2-4 14:23:58

现在他们的限制不是基于ip的,是整个帐户级的限制,一秒一次。会给你一些buffer,短时间内超过限制也没问题。

sxbyl 发表于 2013-2-4 16:16:47

webflier 发表于 2013-2-4 14:23 static/image/common/back.gif
现在他们的限制不是基于ip的,是整个帐户级的限制,一秒一次。会给你一些buffer,短时间内超过限制也没问题 ...

但是我看到申明里说如果是如果是发布到客户端的,那么客户端的限额是一秒一次,毕竟如果是客户端调用API,那么基于整个账户的调用根本没法控制。
他如何知道我每次的调用是从服务器发出的还是从客户端发出的?

webflier 发表于 2013-2-5 17:03:16

sxbyl 发表于 2013-2-4 16:16 static/image/common/back.gif
但是我看到申明里说如果是如果是发布到客户端的,那么客户端的限额是一秒一次,毕竟如果是客户端调用API ...

它不区分客户端还是服务端的啊.你是从哪里看的声明?
你发request过去的时候不是带上你的tag和你的key了嘛,它根据这个在控制哇

sxbyl 发表于 2013-2-6 11:25:22

本帖最后由 sxbyl 于 2013-2-6 11:28 编辑

webflier 发表于 2013-2-5 17:03 static/image/common/back.gif
它不区分客户端还是服务端的啊.你是从哪里看的声明?
你发request过去的时候不是带上你的tag和你的key了嘛 ...
我说的不好控制是说开发者智能控制一个客户端调用服务的频率,无法控制多个安装在用户电脑上的客户端调用服务的频率。

关于限额是基于IP的,文档里有明确说明,http://awsdocs.s3.amazonaws.com/Associates/latest/prod-adv-api-dg.pdf里面有一句:If your application is submitting requests faster than once per second per IP address, you may receiveerror messages from Product Advertising API until you decrease your rate of requests.

基于客户端的,在那个aggreement里有提到:You will not exceed, or if you build and release an application that calls the Product Advertising API, each copy of that application that is installed by an end user will not exceed, any limit on calls per second set forth in any Operational Documentation

webflier 发表于 2013-2-6 18:35:03

参见文档中的Efficiency Guidelines,就在你摘录的If your application is submitting requests faster than once per second per IP address, you may receiveerror messages from Product Advertising API until you decrease your rate of requests.下方。
我反正在不同的服务器上同时调的话,no luck。还是1秒一个,而不是可以1秒n个(n台服务器,n个ip)。
不知道你有没有长时间跑过。

李小冲 发表于 2013-2-7 08:41:49

没有调用过Amazon Product API,不过可以用另一种方法来解决,直接下载amazon的sitemap,一切都搞定:lol

webflier 发表于 2013-2-7 11:19:45

李小冲 发表于 2013-2-7 08:41 static/image/common/back.gif
没有调用过Amazon Product API,不过可以用另一种方法来解决,直接下载amazon的sitemap,一切都搞定 ...

求url:lol

Smythe_Bob 发表于 2013-12-12 16:26:15

留个脚印 11楼真心NB!:lol
页: [1]
查看完整版本: Amazon Product API调用限制的解决办法