![]() |
1
2
您是否考虑过显示缓存数据,然后通过Ajax回调更新价格?如果价格随SO类型通知栏或类似栏而改变,您可以通知用户。 这样用户就可以立即获得结果,并在价格可用时更新价格。 编辑 您可以使用jquery:
假设您有脚本名
这里没有错误处理等,只是给你个主意
|
![]() |
2
3
您可以使用memcache进行缓存。第一个请求将很慢,但剩余的请求应该是即时的。不过,你需要一个cron作业来更新它。更多缓存信息: Good examples of python-memcache (memcached) being used in Python? |
![]() |
3
2
您需要在应用程序中处理以下内容:
对于步骤1,您需要考虑项目价格的变化频率。我会按照你的直觉为一个进程设置一个cron作业,该进程将按设置的间隔检查项目(或项目集)的新价格。这在小规模上是微不足道的,但是当您拥有数万个项目时,这个系统的架构将变得非常重要。 为了避免页面加载延迟,请尽量提前获取信息。我不知道您的用例,但是最好尽可能多地预取信息,避免让用户等待异步JavaScript调用完成。 对于步骤2,如果它是一个新项目或者价格发生了变化,请更新缓存系统中的信息。 对于步骤3,您需要确定适合您需要的最佳缓存系统。正如其他人所说, memcached 是一个可能的解决方案。有很多种” NoSQL “您可以在MySQL中签出甚至缓存结果的数据库。 |
|
4
0
你是怎么拿到价格的?如果您使用诸如BeautifulSoup之类的工具从普通的HTML页面中删除数据,这可能会减慢往返时间。在这种情况下,在解析前,从页面计算快速校验和(如MD5)可能会有所帮助,以查看它是否已更改。如果您使用的API提供了一个简短的XML版本的价格,这可能不是问题。 |
![]() |
code-geek · Jquery根据单选按钮选择隐藏或显示文本字段 7 月前 |
|
Jamie · 在CSS链接的文件名中添加Jinja占位符 7 月前 |
![]() |
ptownbro · 重叠分区标签,同时保持以下所有分区和内容就位 7 月前 |
![]() |
john Rizzo · 按钮背景颜色、悬停和活动状态存在问题 7 月前 |