Wie groß RSS-reader funktioniert (netvibes, Google reader...)
Frage ich mich, wie web-Anwendungen wie Google Reader, Blogline, techronati funktioniert, und welche Technik Sie Folgen zu analysieren Millionen von RSS-feeds über cron-job zu einer Zeit?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist ein viel von verschiedenen Techniken... das "Schlimmste" ist die eine, die Sie beschreiben. (time-based polling).
Ist die erste Sache, die Sie berücksichtigen müssen ist, dass Sie können nicht alles tun, die Analyse auf der server-Seite. Zum Beispiel, ich weiß, dass Netvibes wurde die parsing auf client-Seite (aber zwischengespeicherte Inhalte auf dem server), so dass es ersparte Ihnen eine Menge von Ressourcen. Auf diese Weise würden Sie Umfrage-feeds nur, wenn Benutzer gebeten, von Ihnen, so gibt es keine Notwendigkeit für Sie zu laufen eine Art Zeitschleife.
Zeit basiert polling ist leider noch die häufigste Lösung. Es gibt eine Menge von Techniken, um zu bestimmen, Wann ist die beste Zeit für eine Umfrage. Basierend auf der Häufigkeit der vergangenen updates, basierend auf der Anzahl der Benutzer, die susbcribed... etc. Die alten XML-RPC-ping-Server kann auch verwendet werden, die von diesen Jungs.
Die effizienteste Methode ist die Verwendung PubSubHubbub, das ist ein offenes Protokoll verwendet Google Reader, Netvibes und ein paar tausend andere apps (wie Digg.com, Twitterfeed, Friendfeed...). Es ist ein offenes Protokoll, der ermöglicht, den feed publisher direkt drücken Sie den Inhalt des Feeds zu abonnieren-Anwendungen. Es ist sehr effizient, erfordert aber die Verleger, um es zu implementieren. Durch Zufall, alle großen blogging-Plattformen (Tumblr, Posterous, WordPress, Blogger, SixApart,... etc) haben es umgesetzt. Andere Futtermittel-publishing-Anwendungen (wie feedburner, Gowalla, ...) auch umgesetzt. Wenn Sie veröffentlichen, feeds, ich möchte Sie ermutigen, sich diesem Publikum, und wenn Sie planen, nutzen einige, bitte implementieren Sie die susbcriber Seite.
Die Letzte Lösung ist die Verwendung eines 3rd-party-Anwendung die diese Daten sammeln (mit all den oben beschriebenen Technik) und ping, wenn Sie diese feeds tatsächlich neue Inhalte. Habe ich eine erstellt : Superfeedr und ich glaube, wir machen einen guten job mit diesem. Wir auch normalisieren den Inhalt und ein paar andere Dinge zu helfen, die Sie verbrauchen, die feed-Daten auf einfachste und billige Art und Weise (polling verrückt teuer). Auch wir verwenden die exakt gleichen PubSubHubbub-Protokoll, um push-Inhalte von jedem Futtermittel, das macht es sehr einfach für unsere Nutzer unseren service nutzen, zusätzlich zu Abonnement verfügbar Naben.
Ich sollte auch hinzufügen, dass ich in der Lage war zu Antworten schnell auf Ihre Frage, denn ich benutze eine app, drückt mich der Inhalt des Feeds für Fragen tagged RSS 🙂