我正在一个从Amazon.com和Walmart获取产品价格数据的网站上.我猜想将来还会从其他地方提取数据.
我的第一个想法是直接从亚马逊(使用他们的产品广告API)中提取数据,然后为登陆该页面的每个访问者在网站上显示数据.如果我要检索的产品价格不高(或者网站访问者人数很少),这不是一个坏主意.我认为,一旦网站繁忙并且如果我增加要拉价的产品数量,我就会遇到问题.
使用Amazon和Walmart API,我能够成功进行REST api调用,并解析返回的XML以获取所需的信息.
将这些信息存储在本地数据库中,每1-5分钟更新一次,然后让网站访问者从我的本地数据库中获取价格信息,而不是对Amazon和Walmart进行API调用,是否有意义?
如果我按此路线创建了一个使用Amazon和Walmart API提取价格数据的函数,那么我如何在后台24/7/365每1至5分钟自动运行一次此函数?
解决方法:
Does it make sense to store that information in a local database
是.实际上,这听起来与典型的缓存设置完全一样.我建议调查Redis,而不是为此使用关系数据库.
how do I then automatically run this function every 1 to 5 minutes in
the background
大概是Cron个工作.在我给出更详细的建议之前,您将必须提供更多信息,例如您的应用程序在哪里运行(AWS EC2或其他地方?),以及它是否在Linux或Windows上运行.