PuSH deel 2

PuSH staat voor PubSubHubbub ( of zoiets ) en het is een standaard die een aantal blog-enthousiastelingen hebben afgesproken om sneller informatie te kunnen uitwisselen tussen blogs en lezers. PuSH is gebaseerd op het idee dat je iedereen die daarin is geïnteresseerd een seintje geeft als je iets nieuws geschreven hebt.(ping) Daarmee zou je kunnen volstaan, maar daarmee zadel je een blog op met 2 problemen.
Die administratie kan erg groot worden, als je veel volgers hebt. Op het moment dat je een seintje stuurt, komen automatisch op dat seintje reagerende feed-readers allemaal tegelijk je blog bezoeken, wat een flinke piek in het dataverkeer tot gevolg heeft. En dat betekent weer, dat normale bezoekers even niets te zien krijgen, of een foutmelding ( “er is een timeout opgetreden” ).

Voor dit probleem is een oplossing bedacht, die uit 2 delen bestaat :
– toezenden i.p.v. ophalen
– administratie uitbesteden
Als je toch al een seintje stuurt, kun je net zo goed het hele blog meesturen, in plaats van op een verzoek om toezending te wachten, of een bezoek van een geïnteresseerde. Stuur een derde partij een bericht dat je iets nieuws gepubliceerd hebt, en laat die het doorsturen naar iedereen die geïnteresseerd is.
Dat is PuSH in grote lijnen.
Tussen de publisher en de subscriber komt een derde partij : een hub.
De hub houdt een lijst van subscribers bij, en verstuurt de “fat pings”.
Een “fat ping” is een bericht waar in staat : ik heb iets nieuws gepubliceerd, en de inhoud is….”

Als je je bij een hub abonneert op een feed, moet de hub wel zeker weten dat jij inderdaad degene bent die het abonnement afsluit, zodat hij niet tot in lengte van dagen aan een willekeurig slachtoffer berichten stuurt waar die niet op zit te wachten. Om dat te garanderen, is er een protocol afgesproken waarbij de abonnee een geheim woord meestuurt met de aanvraag. De hub stuurt een bevestiging met dat geheime woord terug. Als alles klopt, krijgt hij daarna van de aspirant-abonnee weer een bevestiging.
Als het abonnement is afgesloten stuurt de hub, zodra hij van de publisher een fat-ping krijgt, deze door naar alle subscribers.

Die hub kan zich overal in de wereld bevinden. Hoe weet degene die zich wil abonneren waar hij hem moet zoeken ?
De URL van de hub ( als er een is voor een bepaalde feed ) is te vinden als een xml-tag in de feed.

Google host een grote hub, waar alle blogspot blogs op zijn aangesloten. WordPress.com maakt gebruik van een ingebouwde hub.
Heb je een blog dat je zelf host, dan kun je een plugin installeren die pings verstuurt naar een hub.
Er is ook een wordpress plugin die een ingebouwde hub heeft : PuSHpress. Deze heb ik gebruikt om mijn eigen software te testen.
Wat er niet was, was clientsoftware waarmee OBA zich kon abonneren op de feeds van alle aangesloten gebruikers.
Gelukkig voor mij waren er wel bouwstenen en handleidingen beschikbaar, waarmee ik zulke software kon maken. (wordt vervolgd….)

Read Offline:
This entry was posted in Wordpress and tagged . Bookmark the permalink.

3 Responses to PuSH deel 2

  1. Glaswerk says:

    Ik ben weer helemaal op de hoogte.

    Thanx.

  2. beheerder says:

    Er komen nog meer delen. Om de host waar OBA op draait te ontlasten, heb ik de subscriber-software op mijn eigen server staan. Het is een losstaande applicatie geworden.

  3. Pingback: Snelle website met goedkope VPS | Kblog

Leave a Reply

Your email address will not be published.