Я использую 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, какое дополнительное и имя файла файл кэша имеет?
Большое спасибо за любой путь можно указать на меня в здоровом направлении здесь.
Джошуа, взгляните на эту статью о простом кэшировании PHP, вы можете сделать то же самое, что и вы описали относительно легко (и да, вероятно, это наиболее разумный путь).
Как общая концепция, кэширование не подразумевает стратегии реализации. Основная идея заключается в том, что вы храните информацию в месте, которое обеспечивает более эффективный доступ, чем то, откуда вы получили данные первоначально.
Поэтому в данном случае эффективнее получить данные с диска, чем запрашивать их в Twitter (обычно сетевая задержка больше, чем дисковая задержка ввода-вывода).
Кроме того, получение данных из памяти более эффективно, чем получение информации с диска (потому что задержка памяти меньше, чем задержка ввода-вывода диска).
Учитывая это, вы можете хранить значения из Twitter в памяти, если хотите, или в файле на диске, если вам нужно, чтобы значения сохранялись после, скажем, выключения. Как вы это сделаете, зависит от вас (диск или память, расширения, формат и т. д. и т. п.). Это ваш кэш.
Единственное, чего вы должны остерегаться - это устаревания кэша. Это происходит, когда информация, которая находится в вашем кэше, не синхронизируется с исходным источником данных. Вы должны определить для своего приложения, насколько приемлемы устаревшие данные, и запрашивать их по мере необходимости, заменяя значения кэша.