簡體   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