Я пытаюсь создать канал RSS, я понятия не имею, как работают программы чтения RSS.
Вот моя проблема:
Читатели RSS "опрашивают" RSS-каналы, на которые они регулярно подписываются (каждые 15 минут и каждый день), верно?
Если я добавлю свой канал так:
для content.php:
<?php
update_content();
set_feed_content();
set_feed_timestamp();
store_feed_to_db();
?>
для rss.php:
<?php
get_the_latest_feed_from_db();
generate_valid_xml();
output_feed();
?>
Тогда, если я опубликую feed A
сейчас и опубликую feed B
16 минут спустя, читатели RSS, которые опрашивают каждые 15 минут, получат feed A
и feed B
, но читатели RSS, которые будут опрашивать с интервалом, превышающим этот, получат только feed B
, верно? Итак, теперь вы видите, куда я иду.
Это то, что я думаю, решение будет
for rss.php:
<?php
get_x_number_feeds_sorted_by_timestamps();
generate_valid_xml();
output_feeds();
?>
Так что теперь проблема для читателей RSS, которые слишком часто опрашивают, они будут получать один и тот же набор результатов снова и снова. Как читатели RSS справляются с этим? Они на самом деле проверяют содержимое канала и сравнивают его со своим «кэшем»? Разве это не пустая трата циклов? Или это действительно, как работают читатели RSS?