2009-06-02 18 views
26

Tengo una aplicación que sondea varias fuentes rss en la web.política para sondear rss

¿Cuál es la etiqueta al sondear los servidores web de otros. ¿Con qué frecuencia sondear, etc.?

¿Cuáles son las mejores prácticas?

Respuesta

36
  1. Hacer uso de la memoria caché HTTP. Enviar Etag y LastModified encabezados. Reconocer la respuesta 304 Not modified. De esta forma puede ahorrar mucho ancho de banda. Además, algunos scripts reconocen el encabezado LastModified y devuelven solo los contenidos parciales (es decir, solo los dos o tres elementos más nuevos en lugar de los 30 más o menos).

  2. No sondee RSS de los servicios que admiten RPC Ping (u otro servicio PUSH, como PubSubHubbub). Es decir. si recibe notificaciones PUSH de un servicio, no tiene que sondear los datos en el intervalo estándar; hágalo una vez al día para verificar si el mecanismo todavía funciona o no (el ping se puede deshabilitar, reconfigurar, dañar, etc.) De esta forma, puede buscar RSS solo al recibir la notificación, no cada hora más o menos.

  3. Compruebe el TTL (en RSS) o los encabezados de control de caché (Expires en ATOM), y no obtenga hasta que el recurso caduque.

  4. Trate de adaptarse a la frecuencia de los elementos nuevos en cada fuente RSS. Si en la última semana solo hubo dos actualizaciones en un feed en particular, no la busque más de una vez al día.AFAIR Google Reader hace eso.

  5. Reduzca la tasa en las horas de la noche u otro momento en que el tráfico en su sitio sea bajo.

  6. Por fin, hazlo una vez por hora. ;)

+1

+1 Algunos puntos excelentes. – cgp

+1

# 2 no es necesariamente una buena idea. El sitio que publica la fuente RSS debería estar configurado para hacer ping al capturador de feeds para que funcione. – ceejayoz

+0

sí, ceejayoz, quise decir exactamente eso. editado mi respuesta un poco –

1

Una vez por hora es una frecuencia que he escuchado.

5

FeedFetcher de Google afirma que sondea rss feed ligeramente menos de una vez por hora.

Desde: http://code.google.com/apis/ajaxfeeds/documentation/

RSS rastreo de frecuencia

A medida que el Google AJAX API RSS utiliza Feedfetcher, los datos de alimentación de la API AJAX de alimentación puede no siempre estar al día. El rastreador de feeds de Google ("Feedfetcher") recupera los feeds de la mayoría de los sitios en menos de una vez cada hora. Algunos sitios actualizados con frecuencia se pueden actualizar con más frecuencia.

+0

+1 para la referencia – cgp

+0

Como code.google.com ya no existe, el enlace está muerto. La documentación aún se admite a partir del 19/10/16 en: https://support.google.com/webmasters/answer/178852?hl=en – lordoku

2

Once an hour, si solo quieres ir por rule-of-thumb (pero el enlace explica algunas mejores opciones).

+0

+1 para obtener la referencia – cgp

0

Rss tiene una configuración ttl así que solo debería sondear cuando el TTL caduque.

pero supongo que si no ponen uno en su su problema y usted debe sondear algo así como una vez cada hora

3

Bueno, yo voy a ir por ahí, haciendo caso omiso de los mensajes que dicen "Google dice, lo hacemos ", y dígalo: tan a menudo como sea necesario.

RSS está ahí para mantenerlo actualizado. Si un feed publica 10 elementos por hora pero solo muestra cinco, perderá cinco de esos elementos y el feed no cumple su función. Es mejor que no lo golpees en absoluto.

Por supuesto, no se puede procesar el servidor con solicitudes, pero si están publicando lo suficiente como para solicitarlo una vez por minuto, no veo cómo es irrazonable igualar esa tasa.

+0

, tendrá en cuenta que la referencia de Google también señala que usan una tasa más alta para los feeds actualizados con frecuencia. –

+1

Mi punto (que estaré de acuerdo no fue el mejor puesto considerando que no leí la cita) es que Google no es necesariamente el principio de todas las mejores prácticas o ética. – Oli

0

Esta no es una respuesta completa, pero busque alertas de inserción.

The RSS blog indica que una mejor práctica es preguntar weblogs.com sobre blogs modificados.

También hay algo, por ejemplo, bullicio, sobre pubsub, una forma de suscribirse a las alertas push que tiene cierto impulso.

0

Observo que twitter utiliza (personalizado) los encabezados X-RateLimit-Remaining y X-RateLimit-Limit (en respuesta HTTP) para indicar el número máximo de sondeos autorizados para los feeds Atom. Es una pena que no hayan usado el campo estándar Expires (que se estableció hace 30 años: P) Supongo que su publicidad de Cache-Control: no-cache también descarta el tiempo de expiración heursítico genérico definido en RFC 2616 (sección 13.2. *) . Es aún más lamentable que Atom no parezca proporcionar una forma estandarizada de indicar la frecuencia con la que se sugiere sondear el feed.