Создание RSS-ленты из базы данных, сколько элементов нужно поместить в ленту, чтобы они все могли быть использованы? - PullRequest
11 голосов
/ 21 октября 2008

Я создаю несколько RSS-каналов из базы данных, чтобы публиковать такие вещи, как объявления о вакансиях, возможности для добровольцев и ссылки в целом. У меня вопрос: сколько предметов должно быть возвращено в ленте, чтобы, скорее всего, кто-то получил все предметы в своем считывателе без пробелов?

ВЫБРАТЬ ТОП 100? (очевидно, нужно будет указать количество фидов, оцененных по времени X)

ВЫБРАТЬ последние 24, 48, 72 часа?

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

Ответы [ 4 ]

6 голосов
/ 21 октября 2008

Ну, это будет зависеть от скорости, с которой появляются записи.

Но я бы предположил, что нацеливание на последние 48 или около того часов будет безопасным, поскольку многие пользователи будут использовать автономные устройства для чтения RSS, которые должны будут нажимать на ленту новостей, чтобы отключить все текущие данные. Но если это будет слишком много данных, то, возможно, просто ограничить его. 100 будет много, хотя.

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

И вам нужно быть осторожным с размером самого канала. Некоторые службы агрегации каналов устанавливают ограничение, например, 512 КБ, и не будут передавать его, если оно будет больше этого значения.

4 голосов
/ 21 октября 2008

Если вы проделали тяжелую работу по созданию каналов в первом месте, предложите переменные строки запроса, чтобы повлиять на то, какие записи возвращаются.

Недавно я сделал нечто подобное для канала на основе интрасети, например,

feed.asp? Д = 3 & п = 100

Возвращает фиды за последние 3 дня с максимум 100 записями.

Аналогично,

feed.asp? D = 7 (все записи за последние 7 дней)

feed.asp? N = 10 (последние 10 записей)

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

Хотя это не поможет вам с вашими «значениями по умолчанию» при запросе feed.asp, он, по крайней мере, позволит техническим пользователям изменять каналы, если они того пожелают. Убедитесь, что вы также проверили значения строки запроса, чтобы предотвратить глупые / злонамеренные запросы.

4 голосов
/ 21 октября 2008

Лично я бы постарался сохранить его до 25 или около того. Я знаю, что количество людей, использующих iGoogle для просмотра RSS-каналов, увеличивается, и максимальное количество отображаемых записей составляет 9 записей. Многие другие RSS-каналы отображают ограничение в 10-15 записей.

Я считаю, что RSS-лента, если она по своей природе не является "всеобъемлющей", обычно представляет собой небольшое быстрое обновление того, что происходит или что доступно.

Как упоминал madlep, я бы тоже старался уменьшить размер.

2 голосов
/ 21 октября 2008

feedburner , кажется, проверяет каждые 5 минут , но вы можете настроить его в своей учетной записи. Другое сообщение на форуме, кажется, указывает это каждые 30 минут .

...