Me pregunto cómo funcionan las aplicaciones web como Google Reader, Blogline, Techronati y qué técnicas siguen para analizar millones de fuentes RSS usando cron job a la vez?¿Qué tamaño de lector de RSS funciona (netvibes, lector de Google ...)
Respuesta
Hay un lote lote de diferentes técnicas ... la "peor" es la que usted describe. (encuesta basada en el tiempo).
Lo primero que debe tener en cuenta es que no todos pueden hacer el análisis en el lado del servidor. Por ejemplo, sé que Netvibes estaba haciendo el análisis en el lado del cliente (pero guardó en caché el contenido en el servidor), por lo que les ahorró muchos recursos. De esta forma, encuesta se alimenta solo cuando los usuarios le preguntaron, por lo que no es necesario que ejecuten algún tipo de bucle de tiempo.
La votación basada en el tiempo sigue siendo, por desgracia, la solución más frecuente. Hay muchas técnicas para determinar cuándo es el mejor momento para hacer una encuesta. En función de la frecuencia de las actualizaciones anteriores, según la cantidad de usuarios que hayan suscrito ... etc. Los servidores de ping XML-RPC antiguos también pueden ser utilizados por estos tipos.
La técnica más eficiente es usar PubSubHubbub, que es un protocolo abierto utilizado por Google Reader, Netvibes y algunas miles de otras aplicaciones (como Digg.com, Twitterfeed, Friendfeed ...). Es un protocolo abierto que permite al publicador de fuentes dirigir directamente el contenido de la fuente a las aplicaciones de suscripción. Es muy eficiente, pero requiere que el editor lo implemente. Por casualidad, todas las grandes plataformas de blogs (Tumblr, Posterous, Wordpress, Blogger, SixApart ... etc) lo han implementado. Otras aplicaciones de publicación de feeds (como feedburner, Gowalla, ...) también lo implementaron. Si publicas feeds, te recomiendo que te unas a esta multitud, y si planeas consumir algunos, por favor, implementa también el lado del suscriptor.
La última solución es utilizar una aplicación de terceros, recopilar datos (utilizando todas las técnicas anteriores) y hacer ping cuando estos feeds tengan contenido nuevo. Creé uno: Superfeedr y creo que hacemos un buen trabajo con esto. También normalizamos el contenido y hacemos algunas otras cosas para ayudarlo a consumir datos de alimentación de la manera más simple y económica (las encuestas pueden ser muy costosas). Además, usamos exactamente el mismo protocolo PubSubHubbub para enviar contenido desde cualquier fuente de información, lo que hace que sea muy sencillo para nuestros usuarios utilizar nuestro servicio además de suscribirse a centros disponibles.
Además, debo añadir que yo era capaz de responder rápidamente a su pregunta, porque el uso de una aplicación que me empuja el contenido de la alimentación para las preguntas etiquetadas RSS :)
- 1. Escribiendo un lector de RSS en Java
- 2. Creando un lector de RSS simple, recuperando contenido
- 3. El ejemplo de Xmlapter no funciona .contains (lector de contactos, alimentaciones de Rss, visualización de fotos)
- 4. lector de huellas dactilares o lector de pulgar
- 5. ¿Cómo puedo comenzar a crear un lector de C# RSS?
- 6. (cadena) lector [0] vs Convert.ToString (lector [0])
- 7. Macros de lector de raquetas
- 8. Lector de código QR para iPhone
- 9. Cerrar el lector anidado
- 10. lector Mónada con Scalaz
- 11. Gedcom lector para C#
- 12. jqGrid y lector JSON
- 13. excel-lector problema utf
- 14. lector de datos es incompatible ... miembro no tiene correspondiente en la columna lector de datos
- 15. ¿Qué lector de código de barras de IPhone
- 16. Ejemplo de lector de tarjetas inteligentes Blackberry
- 17. Lector Python UTF-16 CSV
- 18. java lector de código de barras
- 19. Lector de archivos de forma en Python?
- 20. ¿Cómo sabe el lector de RSS que se actualiza un feed?
- 21. lector CSV de Python y la iteración
- 22. Convertir datatable a lector de datos
- 23. Analizador/lector de CSV para C#?
- 24. Cómo hacer un lector de código QR
- 25. Lector EventLogQuery para computadora remota?
- 26. Cohete múltiple de un solo lector cola única de fifo
- 27. Cómo obtener rss elementos antiguos como google reader
- 28. C# - Lector binario en Big Endian?
- 29. Lector de PDF de tinta electrónica para el desarrollador?
- 30. software de lector de huellas digitales usando C#
Una optimización interesante el lector de Google hace aún al sondear los feeds: "Google Reader verificará las actualizaciones de sus suscripciones una vez por hora. Las actualizaciones pueden producirse con menor frecuencia para los feeds que tienen pocos suscriptores". [referencia] (http://google.com/support/reader/bin/answer.py?hl=es&answer=70642) Esta es la declaración oficial, aunque he visto actualizaciones más frecuentes (¿cada 5 minutos?) para algunos feeds. (Gizmodo, Slashdot). Para los feeds en los que soy el único suscriptor, es común ver solo 1 o 2 actualizaciones por día. Esto fue confirmado por otras personas, estaba bien, pero no es oficial, dijo. – ptdev