Данные новичка, кэширующиеся в PHP

Я использую simpleXML для прохождения через результатов XML XML-файла Твиттера, но я полностью потерян относительно кэширования результатов с PHP. Эта статья, кажется, некоторой справки, но я столкнулся с кэш-памятью (и memcached. Продвиньтесь, namers.) также, и я понятия не имею, что сделать.

Я использую это:

$sxml = simplexml_load_file(
    'http://api.twitter.com/1/qworky/lists/qworkyteam/statuses.xml');

foreach($sxml->status as $status){
    $name = $status->user->name;
    $image = $status->user->profile_image_url;
    $update = $status->text;
    $url = "http://twitter.com/" . $status->user->screen_name;
}

для простого хранения данных XML Твиттера перечисляют в применимые переменные. Но каков правильный поступок? Создайте файл кэша и только выполните этот блок PHP, если файл кэша является более старым, чем десять минут, иначе подайте кэшируемые переменные? Как я передаю кэшируемые переменные назад и вперед между кэшируемым файлом и DOM? Heck, какое дополнительное и имя файла файл кэша имеет?

Большое спасибо за любой путь можно указать на меня в здоровом направлении здесь.

6
задан casperOne 17 February 2010 в 08:57
поделиться

2 ответа

Джошуа, взгляните на эту статью о простом кэшировании PHP, вы можете сделать то же самое, что и вы описали относительно легко (и да, вероятно, это наиболее разумный путь).

10
ответ дан 8 December 2019 в 16:02
поделиться

Как общая концепция, кэширование не подразумевает стратегии реализации. Основная идея заключается в том, что вы храните информацию в месте, которое обеспечивает более эффективный доступ, чем то, откуда вы получили данные первоначально.

Поэтому в данном случае эффективнее получить данные с диска, чем запрашивать их в Twitter (обычно сетевая задержка больше, чем дисковая задержка ввода-вывода).

Кроме того, получение данных из памяти более эффективно, чем получение информации с диска (потому что задержка памяти меньше, чем задержка ввода-вывода диска).

Учитывая это, вы можете хранить значения из Twitter в памяти, если хотите, или в файле на диске, если вам нужно, чтобы значения сохранялись после, скажем, выключения. Как вы это сделаете, зависит от вас (диск или память, расширения, формат и т. д. и т. п.). Это ваш кэш.

Единственное, чего вы должны остерегаться - это устаревания кэша. Это происходит, когда информация, которая находится в вашем кэше, не синхронизируется с исходным источником данных. Вы должны определить для своего приложения, насколько приемлемы устаревшие данные, и запрашивать их по мере необходимости, заменяя значения кэша.

5
ответ дан 8 December 2019 в 16:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: