大家好问候,我正在开发类似于Trivago和Hotelscombined的网站.我可以从expedia,skoosh,lateroom,getaroom,venere,hotel pronto等所有api获取数据.我陷入了必须保持网站性能的地步.我想知道如何使网站更快,就像http://www.trivago.com,http://hotelscombined.com.
如何使用分页并将价格与所有api进行比较.如果我有一个cron作业正在运行并将数据保存在数据库中,那么我将更容易显示所有api的价格并进行比较,它会更快.但是对我来说,运行cron工作是个坏主意,特别是当我们谈论酒店api时,因为酒店的内容每次都在变化. cron的问题在于,有数千个城市,应该在数据库中提取多少数据以及因为酒店在接下来的1小时内被预订了多少次.如果我们运行cron作业,并假设已经预订了酒店并将其保存在数据库中,那么我应该如何管理它.如果cron是问题的答案,那么我们应该如何在数据库中获取包含酒店描述,图像等的10到20个apis数据并管理它们,因为世界上有超过100万家酒店或者可能超过1000万.还有一些例如:
i)在纽约搜索2名成人的酒店,1名儿童从8月1日起检查时间到8月8日退房时间.
ii)在伦敦搜索1名成人的酒店,2名儿童从8月2日起检查时间到8月5日退房时间.在搜索中可能有很多案例.那么我们应该运行cron多少次和多少次?
在Expedia(http://developer.ean.com/spec/)的规范中,声明请求数量有限制: - 酒店列表请求数:5000:1 - 房间可用性请求:500:1
如果我能够知道如何加速网站,这对我将非常有帮助.
提前致谢
我想你回答了你自己的问题。Cron 作业和缓存到本地数据库对我来说听起来是个好主意。只需将 cron 设置为与不同酒店站点的内容更改类似的时间间隔即可。如果性能至关重要,也许可以将缓存数据库放在自己的服务器上。