1
dndx 2013-06-29 11:01:07 +08:00
如果大多数访客会访问重复的商品,缓存。
否则只能找亚马逊提高限额。 |
2
msg7086 2013-06-29 12:24:45 +08:00
每秒1次,每分钟2000次,1分钟多少秒来着
每秒1次,一天就能有几万次。商品才多少个……重复数据当然直接缓存。 另外可以通过多个apikey和多个源IP来绕开限额 |
3
lusin OP |
5
jackyz 2013-06-29 14:20:23 +08:00
比如,不用api?
|
6
horsley 2013-06-29 14:31:09 +08:00
sleep 消息队列
|
7
msg7086 2013-06-29 14:32:55 +08:00
@lusin 考虑多买个IP来做balancing。另外超过的话应该就是返回错误代码吧,4xx或者5xx之类,应该不会有其他什么大问题。
|
8
013231 2013-06-29 14:36:18 +08:00
我不瞭解亞馬遜商品API, 不過我很好奇為什麼有每秒1次和每分鐘2000次這兩個限制. 有了每秒1次限制, 每分鐘限制應該<=60呀.
|
9
yfdyh000 2013-06-29 15:25:58 +08:00
存队列,延迟、合并请求。没用过,猜测楼主想说每分钟2000项。
|
10
suren1986 2013-06-29 16:00:50 +08:00
用redis实现一个锁,抓页面之前加锁,过期时间为1s。
|
11
kepeng 2013-06-29 16:47:17 +08:00
22
|
12
otakustay 2013-06-30 00:52:08 +08:00
如果只是单个页面,且不访问amazon接口这页面对用户来说没价值的话,外面nginx上做个throttle就搞定了
如果是多个页面都用上amazon API,且没连上API这页面用户还是要看的话,在API级别上自己做throttle,这个比较麻烦,所以干脆再把这个API代理一下做成一个http service,再上nginx做throttle- - |
13
skydiver 2013-06-30 04:47:35 +08:00 via Android
一天2000次吧……
|
14
RelativeLayout 2013-06-30 09:52:21 +08:00 via Android
挂个goag……或者bae代理,然后模拟百度或者谷歌的爬虫。很多爬取问题迎刃而解。。
|