Dispatcher - Overzicht dispatcher-overview
Dispatcher is een Adobe Experience Manager-programma voor caching en taakverdeling dat wordt gebruikt met een webserver op bedrijfsniveau.
Het implementatieproces van de Dispatcher is onafhankelijk van de webserver en het gekozen besturingssysteem:
- Meer informatie over Dispatcher (deze pagina). Ook, zie vaak gestelde vragen over Dispatcher.
- Installeer a gesteunde Webservervolgens de documentatie van de Webserver.
- installeer de module van Dispatcherop uw Webserver en vorm dienovereenkomstig de Webserver.
- vorm Dispatcher(het dispatcher.om het even welk dossier).
- vorm AEMzodat de inhoudsupdates het geheime voorgeheugen ongeldig maken.
- Zie de Deskundigen van de AEM Gemeenschap voor Juli 2017 vragen.
- Heb toegang tot deze bewaarplaats. Het bevat een verzameling experimenten in een "home"-laboratoriumformaat.
Gebruik de volgende informatie zoals vereist:
- De Dispatcher-beveiligingscontrolelijst
- De Kennisbank van Dispatcher
- Optimizing een Website voor de Prestaties van het Geheime voorgeheugen
- Dispatcher met meerdere domeinen gebruiken
- SSL gebruiken met Dispatcher
- Het uitvoeren van Toestemming-Gevoelige Caching
- Problemen met Dispatcher oplossen
- Veelgestelde vragen over Dispatcher Top Issues
Waarom Dispatcher gebruiken om Caching uit te voeren? why-use-dispatcher-to-implement-caching
Er zijn twee basisbenaderingen voor webpublicatie:
- de Statische Servers van het Web: zoals Apache of IIS, zijn eenvoudig, maar snel.
- Servers van het Beheer van de Inhoud: die dynamische, in real time, intelligente inhoud verstrekken, maar meer computertijd en andere middelen vereisen.
De Dispatcher helpt een snelle en dynamische omgeving te realiseren. Het werkt als deel van een statische server van HTML, zoals Apache, met als doel:
- het opslaan (of "in cache plaatsen") van zoveel mogelijk site-inhoud, in de vorm van een statische website
- zo weinig mogelijk toegang krijgen tot de layout-engine.
Dit betekent dat:
-
statische inhoud wordt behandeld met de zelfde snelheid en het gemak zoals op een statische Webserver. U kunt ook de beheer- en beveiligingsprogramma's gebruiken die beschikbaar zijn voor uw statische webservers.
-
dynamische inhoud wordt geproduceerd zoals nodig, zonder het systeem neer te vertragen meer dan absoluut noodzakelijk.
De Dispatcher bevat mechanismen voor het genereren en bijwerken van statische HTML op basis van de inhoud van de dynamische site. U kunt in detail specificeren welke documenten als statische dossiers worden opgeslagen en die altijd dynamisch worden geproduceerd.
In dit gedeelte worden de beginselen van dit proces toegelicht.
Statische webserver static-web-server
Een statische webserver, zoals Apache of IIS, dient statische HTML-bestanden voor bezoekers van uw website. Statische pagina's worden één keer gemaakt, zodat voor elke aanvraag dezelfde inhoud wordt geleverd.
Dit proces is eenvoudig en efficiënt. Als een bezoeker een bestand zoals een HTML-pagina aanvraagt, wordt het bestand rechtstreeks uit het geheugen genomen. In het slechtste geval wordt het bestand vanaf het lokale station gelezen. Statische webservers zijn al geruime tijd beschikbaar. Er is dus een breed scala aan instrumenten voor beheer en beveiliging. Deze hulpmiddelen zijn goed geïntegreerd met netwerkinfrastructuur.
Servers voor inhoudsbeheer content-management-servers
Als u een CMS (Content Management Server) gebruikt, zoals AEM, verwerkt een geavanceerde indelingsengine de aanvraag van een bezoeker. De engine leest inhoud uit een opslagplaats die, in combinatie met stijlen, indelingen en toegangsrechten, de inhoud omzet in een document dat is aangepast aan de behoeften en rechten van de bezoeker.
Met deze workflow kunt u rijkere, dynamische inhoud maken die de flexibiliteit en functionaliteit van uw website vergroot. Voor de lay-outengine is echter meer verwerkingskracht nodig dan voor een statische server. Hierdoor kan deze installatie trager worden als veel bezoekers het systeem gebruiken.
Hoe Dispatcher in cache plaatsen how-dispatcher-performs-caching
de Folder van het Geheime voorgeheugen voor caching, gebruikt de module van Dispatcher de capaciteit van de Webserver om statische inhoud te dienen. Dispatcher plaatst de caching documenten in de wortel van de server van het Web.
Methoden voor het in cache plaatsen
De Dispatcher beschikt over twee primaire methoden om de cacheinhoud bij te werken wanneer wijzigingen in de website worden aangebracht.
- Updates van de Inhoud verwijderen de pagina's die, en dossiers zijn veranderd die direct met hen worden geassocieerd.
- auto-Invalidation maakt automatisch die delen van het geheime voorgeheugen ongeldig die uit datum na een update kunnen zijn. Dat wil zeggen dat relevante pagina's in feite verouderd zijn, zonder iets te verwijderen.
Updates van inhoud
In een inhoudsupdate veranderen een of meer AEM documenten. AEM verzendt een synchronisatieverzoek naar de Dispatcher, die het geheime voorgeheugen dienovereenkomstig bijwerkt:
- De gewijzigde bestanden worden uit de cache verwijderd.
- Alle bestanden die met dezelfde greep beginnen, worden uit de cache verwijderd. Als het bestand
/en/index.html
bijvoorbeeld wordt bijgewerkt, worden alle bestanden verwijderd die beginnen met/en/index.
. Met dit mechanisme kunt u cacheefficiënte sites ontwerpen, met name voor beeldnavigatie. - Het raakt het zogenaamde statfile, die timestamp van het staatsdossier bijwerkt om op de datum van de laatste verandering te wijzen.
Er zij op gewezen dat:
- De Updates van de inhoud worden typisch gebruikt met een auteurssysteem dat "weet"wat moet worden vervangen.
- Een inhoudsupdates die van invloed zijn op bestanden worden verwijderd, maar niet onmiddellijk vervangen. De volgende keer dat een dergelijk bestand wordt aangevraagd, haalt de Dispatcher het nieuwe bestand op van de AEM instantie en plaatst het in de cache, waardoor de oude inhoud wordt overschreven.
- Gewoonlijk worden automatisch gegenereerde afbeeldingen die tekst van een pagina bevatten, opgeslagen in afbeeldingsbestanden die beginnen met dezelfde greep, zodat de koppeling bestaat voor verwijdering. U kunt bijvoorbeeld de titeltekst van de pagina mypage.html opslaan als de afbeelding mypage.titlePicture.gif in dezelfde map. Op deze manier wordt de afbeelding automatisch uit de cache verwijderd telkens wanneer de pagina wordt bijgewerkt, zodat u zeker weet dat de afbeelding altijd de huidige versie van de pagina weerspiegelt.
- U hebt mogelijk meerdere statfiles, bijvoorbeeld één per taalmap. Als een pagina wordt bijgewerkt, zoekt AEM naar de volgende ouderomslag die een statfile bevat, en raakt dat dossier.
Automatische ongeldigmaking
De auto-ongeldigverklaring maakt automatisch delen van het geheime voorgeheugen ongeldig - zonder fysieke het schrappen van om het even welke dossiers. Bij elke update van de inhoud wordt het zogenaamde statfile aangeraakt, zodat het tijdstempel de laatste update van de inhoud weergeeft.
De Dispatcher heeft een lijst met bestanden die automatisch worden geannuleerd. Wanneer een document uit die lijst wordt gevraagd, vergelijkt de Dispatcher de datum van het cachedocument met de tijdstempel van het statusbestand:
- als het document in de cache nieuwer is, retourneert de Dispatcher het.
- als deze ouder is, haalt de Dispatcher de huidige versie op van de AEM instantie.
Ook hier moeten enkele punten worden vermeld:
- Automatische ongeldigmaking wordt doorgaans gebruikt wanneer de onderlinge relaties complex zijn, zoals HTML-pagina's. Deze pagina's bevatten koppelingen en navigatie-items, zodat deze gewoonlijk moeten worden bijgewerkt nadat de inhoud is bijgewerkt. Als u automatisch PDF- of afbeeldingsbestanden hebt gegenereerd, kunt u ervoor kiezen deze bestanden ook automatisch ongeldig te maken.
- De automatische ongeldigverklaring impliceert geen actie door de Dispatcher bij updatetijd, behalve voor het aanraken van het statfile. Als u het bestand aanraakt, wordt de cacheinhoud echter automatisch verouderd, zonder dat de inhoud fysiek uit de cache wordt verwijderd.
Hoe Dispatcher documenten retourneert how-dispatcher-returns-documents
Bepalen of een document in cache moet worden geplaatst
U kunt bepalen welke documenten de geheime voorgeheugens van Dispatcher in het configuratiedossier. De Dispatcher controleert het verzoek aan de lijst van cacheable documenten. Als het document zich niet in deze lijst bevindt, vraagt de Dispatcher het document op bij het AEM.
In de volgende gevallen vraagt de Dispatcher het document altijd rechtstreeks van het AEM exemplaar aan:
- De aanvraag-URI bevat een vraagteken
?
. Dit scenario geeft meestal een dynamische pagina aan, zoals een zoekresultaat, dat niet in de cache hoeft te worden opgeslagen. - De bestandsextensie ontbreekt. De webserver heeft de extensie nodig om het documenttype (het MIME-type) te bepalen.
- De verificatieheader wordt ingesteld (configureerbaar).
Bepalen of een document in de cache is geplaatst
De Dispatcher slaat de cachebestanden op de webserver op alsof ze deel uitmaken van een statische website. Als een gebruiker om een cacheable document verzoekt, controleert de Dispatcher of dat document in het dossiersysteem van de Webserver bestaat:
- als het document in de cache is opgeslagen, retourneert Dispatcher het bestand.
- als het niet in de cache is opgeslagen, vraagt de Dispatcher het document op bij het AEM-exemplaar.
Bepalen of een document bijgewerkt is
Als u wilt weten of een document up-to-date is, voert de Dispatcher twee stappen uit:
- Hiermee wordt gecontroleerd of het document automatisch wordt ongeldig gemaakt. Als dat niet het geval is, wordt het document als bijgewerkt beschouwd.
- Als het document is geconfigureerd voor automatische validatie, controleert de Dispatcher of het ouder of nieuwer is dan de laatste beschikbare wijziging. Als het ouder is, vraagt de Dispatcher de huidige versie van de AEM instantie en vervangt de versie in het geheime voorgeheugen.
De voordelen van taakverdeling the-benefits-of-load-balancing
Bij taakverdeling wordt de computerbelasting van de website over verschillende AEM verdeeld.
U wint:
-
verhoogde verwerkingsmacht
In de praktijk betekent een verhoogde verwerkingscapaciteit dat de Dispatcher verzoeken om documenten deelt tussen verschillende AEM. Omdat elk exemplaar nu minder documenten te verwerken heeft, hebt u snellere reactietijden. Dispatcher houdt interne statistieken voor elke documentcategorie bij, zodat kan het de lading schatten en de vragen efficiënt verspreiden. -
verhoogde mislukken-veilige dekking
Als de Dispatcher geen reacties van een instantie ontvangt, worden aanvragen automatisch doorgestuurd naar een van de andere instanties. Als een instantie niet beschikbaar wordt, is het enige effect een vertraging van de plaats, evenredig aan de verloren computermacht. Alle services gaan echter door. -
U kunt ook verschillende websites beheren op dezelfde statische webserver.
Hoe de Dispatcher taakverdeling uitvoert how-the-dispatcher-performs-load-balancing
Prestatiestatistieken
De Dispatcher houdt interne statistieken bij over hoe snel elke instantie van AEM documenten verwerkt. Op basis van deze gegevens schat de Dispatcher welke instantie de snelste responstijd kan leveren bij het beantwoorden van een verzoek. De benodigde berekeningstijd wordt dus op die instantie gereserveerd.
Verschillende typen aanvragen kunnen verschillende gemiddelde voltooiingstijden hebben, zodat u met de Dispatcher documentcategorieën kunt opgeven. Deze categorieën worden dan in overweging genomen bij het berekenen van de tijdschattingen. U kunt bijvoorbeeld onderscheid maken tussen HTML-pagina's en afbeeldingen, omdat de standaardresponstijden sterk kunnen verschillen.
Als u een uitgebreide zoekfunctie gebruikt, kunt u een categorie voor zoekopdrachten maken. Met deze methode kan de Dispatcher zoekopdrachten verzenden naar de instantie die het snelst reageert. Het helpt ook voorkomen dat een langzamere instantie wordt gestort wanneer deze meerdere ‘dure’ zoekopdrachten ontvangt, terwijl de andere de ‘goedkopere’ aanvragen krijgen.
Persoonlijke inhoud (Vaste verbindingen)
De stevige verbindingen zorgen ervoor dat de documenten voor één gebruiker allen op de zelfde instantie van AEM samengesteld zijn. Dit punt is belangrijk als u gepersonaliseerde pagina's en zittingsgegevens gebruikt. De gegevens worden opgeslagen op de instantie, zodat de verdere verzoeken van de zelfde gebruiker aan die instantie moeten terugkeren of het gegeven wordt verloren.
Omdat kleverige verbindingen de mogelijkheid van Dispatcher om de verzoeken te optimaliseren beperken, zou u hen slechts moeten gebruiken wanneer nodig. U kunt de map opgeven die de "plakke" documenten bevat, zodat alle documenten in die map in dezelfde instantie voor elke gebruiker worden samengesteld.
Meerdere verzenders gebruiken using-multiple-dispatchers
In complexe instellingen kunt u meerdere verzenders gebruiken. U kunt bijvoorbeeld het volgende gebruiken:
- één Dispatcher om een website op het Intranet te publiceren
- een tweede Dispatcher, onder een ander adres en met verschillende beveiligingsinstellingen, om dezelfde inhoud op internet te publiceren.
In dat geval moet u ervoor zorgen dat elke aanvraag slechts door één Dispatcher wordt behandeld. Een Dispatcher behandelt geen verzoeken die afkomstig zijn van een andere Dispatcher. Zorg er daarom voor dat beide verzenders de AEM website rechtstreeks openen.
Dispatcher gebruiken met een CDN using-dispatcher-with-a-cdn
Een CDN (Content Delivery Network), zoals Akamai Edge Delivery of Amazon Cloud Front, levert inhoud op een locatie die dicht bij de eindgebruiker ligt. Door
- zorgt voor snellere responstijden voor eindgebruikers
- start het laden van uw servers
Als een HTTP-infrastructuurcomponent werkt een CDN ongeveer als een Dispatcher. Wanneer een knoop CDN een verzoek ontvangt, dient het het verzoek van zijn geheime voorgeheugen, indien mogelijk (het middel is beschikbaar in het geheime voorgeheugen en is geldig). Anders, bereikt het uit aan de volgende dichtstbijzijnde server om het middel terug te winnen en het voor verdere verzoeken in het voorgeheugen onder te brengen indien aangewezen.
De "eerstvolgende dichtstbijzijnde server" is afhankelijk van uw specifieke installatie. In een Akamai-configuratie kan het verzoek bijvoorbeeld het volgende pad volgen:
- De Akamai Edge-node
- De Midgress-laag van Akamai
- Uw firewall
- Uw taakverdelingsmechanisme
- Dispatcher
- AEM
Doorgaans is Dispatcher de volgende server die het document kan aanleveren vanuit een cache en die invloed heeft op de antwoordheaders die worden geretourneerd naar de CDN-server.
CDN-cache beheren controlling-a-cdn-cache
Er zijn verschillende manieren om te bepalen hoe lang een CDN een bron in cache plaatst voordat deze vanuit Dispatcher wordt opgehaald.
-
Expliciete configuratie
Vorm, hoe lang de bijzondere middelen in het geheime voorgeheugen van CDN, afhankelijk van mime type, uitbreiding, verzoektype, etc. worden gehouden. -
Verlopen- en cachebeheerkoppen
De meeste CDN's respecterenExpires:
enCache-Control:
HTTP-headers als deze worden verzonden door de upstream-server. Deze methode kan, bijvoorbeeld, worden bereikt door te gebruiken mod_validateModule Apache. -
Handmatige ongeldigmaking
CDNs staat middelen toe om uit het geheime voorgeheugen door Webinterfaces worden verwijderd. -
Op API gebaseerde validatie
De meeste CDN's bieden ook een REST- en/of SOAP-API waarmee bronnen uit de cache kunnen worden verwijderd.
In een standaard AEM configuratie door uitbreiding, door weg, of door allebei - die door punten 1 en 2 hierboven kan worden bereikt - biedt mogelijkheden om redelijke caching periodes te plaatsen. Deze cacheperioden gelden voor vaak gebruikte bronnen die niet vaak worden gewijzigd, zoals ontwerpafbeeldingen en clientbibliotheken. Wanneer de nieuwe versies worden opgesteld, typisch wordt een handongeldigverklaring vereist.
Als deze benadering wordt gebruikt om beheerde inhoud in het voorgeheugen onder te brengen, impliceert het dat de inhoudsveranderingen slechts aan eind - gebruikers zichtbaar zijn zodra de gevormde caching periode is verlopen. En wanneer het document weer van Dispatcher wordt opgehaald.
Voor fijnere besturing kunt u met API-gebaseerde validatie de cache van een CDN ongeldig maken als de Dispatcher-cache ongeldig wordt gemaakt. Gebaseerd op CDNs API, kunt u uw eigen ContentBuilderen TransportHandler(als API niet op REST-Gebaseerd is) uitvoeren, en opstelling een Agent van de Replicatie die deze stukken gebruikt om het geheime voorgeheugen van CDN ongeldig te maken.
Dispatcher gebruiken met een auteurserver using-a-dispatcher-with-an-author-server
author_dispatcher.any
-bestand en wijzigt u de eigenschap /rule
van de sectie /cache
als volgt:/rules
{
/0000
{ /type "deny" /glob "*"}
}
Een Dispatcher kan vóór een auteurinstantie worden gebruikt om auteursprestaties te verbeteren. Ga als volgt te werk om een ontwerpversie van Dispatcher te configureren:
-
Installeer een Dispatcher in een Webserver (een Apache of IIS Webserver, zie Installerend Dispatcher).
-
Test de nieuw geïnstalleerde Dispatcher op basis van een werkende AEM-publicatie-instantie. Zo weet u zeker dat een correcte installatie op de basislijn is uitgevoerd.
-
Zorg ervoor dat de Dispatcher via TCP/IP verbinding kan maken met de auteurinstantie.
-
Vervang het steekproef
dispatcher.any
dossier met hetauthor_dispatcher.any
dossier dat van de download van Dispatcherwordt voorzien. -
Open
author_dispatcher.any
in een teksteditor en breng de volgende wijzigingen aan:- Wijzig de sectie
/hostname
en/port
van de sectie/renders
zodat ze naar de instantie van de auteur verwijzen. - Wijzig de
/docroot
van de/cache
-sectie zodat deze naar een cachemap verwijzen. Voor het geval u AEM met Aanraakinterfacegebruikt, zie de bovenstaande waarschuwing. - Sla de wijzigingen op.
- Wijzig de sectie
-
Verwijder alle bestaande bestanden in de map
/cache
>/docroot
die u hierboven hebt geconfigureerd. -
Start de webserver opnieuw.
author_dispatcher.any
-configuratie een pakket met CQ5-functies, hotfix of toepassingscode installeert dat invloed heeft op inhoud onder /libs
of /apps
, moet u de bestanden in de cache verwijderen. De bestanden staan onder deze mappen in de cache van Dispatcher. Dit zorgt ervoor dat de volgende keer dat ze worden opgevraagd, de nieuw bijgewerkte bestanden worden opgehaald en niet de oude in de cache opgeslagen bestanden.- Schrap of maak de auteur Dispatcher onbruikbaar flushing agent op uw AEM auteursinstantie.
- Opnieuw de configuratie van de auteurDispatcher door de nieuwe instructies hierboven te volgen.