繁体   English   中英

缓存Feed还是已完成的页面?

[英]cache a feed or a finished page?

我刚开始使用SimpleXML来获取Feed,并在我的一个网页上显示来自该XML Feed的数据。 请参阅我的第一篇文章https://stackoverflow.com/questions/5925368/how-to-use-the-weather-gov-xml-feed-on-a-website我对PHP有基本的了解,所以我可能会遗漏一些东西基本。

如果我理解正在发生的事情,每当有人在显示php之前查看我的页面时,脚本首先必须去获取提要。 然后它执行我要求它处理Feed的内容,然后显示页面。

如果我要缓存Feed或格式化feed和缓存,我认为一切都会更快。 哪个更好地缓存原始Feed或格式化feed并缓存结果? 我如何进行缓存?

我希望有人可以指点我的教程,教我如何用PHP缓存东西,或者有人有一些我可以从中学习和/或适应我的项目的示例代码?

谢谢。

谷歌“简单的PHP缓存教程”还是看看这个

不像现在那样回显或打印到屏幕上的文本,而是使用字符串连接技术构建变量,如下所示:

$html = '<h3>Weather View</h3>';

foreach( element in your xml feed){
$html .= 'Some more information';
}
//then when done
file_put_contents('weather_cache.txt', $html );

基本上你应该缓存一段html,然后使用PHP将其包含在你网页中的正确位置,可能使用file_get_contents();

本教程中的逻辑将告诉您如何检查缓存的日期,然后决定a)去刷新xml并重新创建缓存或b)抬起并显示缓存的文件

如果您将PHP用于个人网站,则可能无法安装APC((操作码)缓存)(如果可以安装/使用,则可以使用)。 我的建议是使用像redistogo (缓存)这样的小网站免费。

如果我理解正在发生的事情,每当有人在显示php之前查看我的页面时,脚本首先必须去获取提要。 然后它执行我要求它处理Feed的内容,然后显示页面。

就像你说你应该缓存feed(redis)。 执行此操作的最佳方法是脱机(这样,用户不必等待脚本通过使用某种cronjob来获取需要花费大量时间(相对)...的Feed。 有很多免费的网站上,你这cronjobs例如像http://www.onlinecronjobs.com/

如果我要缓存Feed或格式化feed和缓存,我认为一切都会更快。 哪个更好地缓存原始Feed或格式化feed并缓存结果? 我如何进行缓存?

我想我会缓存这两种格式。 因为如果需要,很难从格式化的Feed中获取原始Feed。

我可能会使用SETEX缓存它们,并且所需的时间到期。 缓存过期后从网站获取新副本。 我过去曾使用Predisredistogo交谈。

我希望有人可以指点我的教程,教我如何用PHP缓存东西,或者有人有一些我可以从中学习和/或适应我的项目的示例代码?

有很多关于使用redis的教程。 例如设计一个twitter-clone 如果你进行了正确的谷歌搜索,你会发现很多结果。

我建议您缓存RSS提要的内容。
在那里你可以学习,如何使用APC,它可以是你的操作码cacher和非常快速的数据cacher。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM