RSS: частота обновления? - PullRequest
8 голосов
/ 20 июня 2011

Я пишу небольшое приложение для собственного использования, которое будет использовать общедоступный канал RSS.

Насколько я могу судить, в протоколе нет механизма подписки / публикации;Мне нужно, чтобы мое приложение периодически получало HTTP-GET RSS-ленту.

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

Это действительная проблема?Есть ли какой-нибудь общий совет о том, что такое «разумная» частота обновления?У меня даже есть свои факты прямо?

1 Ответ

8 голосов
/ 20 июня 2011

Поскольку RSS построен на протоколе HTTP, в целом большинство сайтов должны соблюдать HTTP-заголовок If-Modified-Since.Это довольно просто, и большинство серверов должны иметь возможность быстро возвращать эту информацию.

Поэтому для клиентской части вам необходимо отслеживать последний раз, когда вы отправили запрос, и передать егосервер.Если сервер возвращает код 304, то вы будете знать, что ничего не изменилось.Но что еще более важно, серверу не нужно возвращать информацию о фиде, сохраняя байты трафика.Если сервер возвращает 200, вам нужно обработать результаты и сохранить дату ответа.

В конечном счете, ответ на этот вопрос зависит от того, какой тип информации находится на другом конце канала RSS.,Если это блог, то, вероятно, достаточно одного раза в 4-8 часов.Но если RSS-канал является источником биржевых котировок (маловероятно, это просто пример), то каждые 10 минут недостаточно.

...