{"id":22898,"date":"2024-09-06T07:08:59","date_gmt":"2024-09-06T07:08:59","guid":{"rendered":"http:\/\/axamit.com\/?p=9843"},"modified":"2026-06-22T07:58:12","modified_gmt":"2026-06-22T07:58:12","slug":"optymalizacja-wydajnosci-adobe-experience-manager-eksperckie-techniki-dla-najlepszych-rezultatow","status":"publish","type":"post","link":"https:\/\/axamit.com\/pl\/blog\/adobe-experience-manager\/optymalizacja-wydajnosci-adobe-experience-manager-eksperckie-techniki-dla-najlepszych-rezultatow\/","title":{"rendered":"Optymalizacja wydajno\u015bci Adobe Experience Manager: Eksperckie techniki dla najlepszych rezultat\u00f3w"},"content":{"rendered":"<div class=\"custom-toc\"><ul><\/ul><\/div>\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Adobe Experience Manager ma opini\u0119 najbardziej zaawansowanego systemu zarz\u0105dzania tre\u015bci\u0105 na \u015bwiecie, ale ma to swoj\u0105 cen\u0119 \u2014 wiele mo\u017cliwo\u015bci optymalizacji i wykorzystania wydajno\u015bci AEM jest cz\u0119sto pomijanych z powodu jego z\u0142o\u017conej architektury i braku \u015bwiadomo\u015bci.\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bior\u0105c pod uwag\u0119 wysoki koszt licencji AEM, taki scenariusz jest prawdopodobnie wi\u0119cej ni\u017c frustruj\u0105cy. I cho\u0107 nie ma magicznego, uniwersalnego rozwi\u0105zania, mo\u017cemy zaoferowa\u0107 zestaw praktyk, kt\u00f3re mo\u017cna wykorzysta\u0107 do szybkiego uzyskania mierzalnych rezultat\u00f3w, bez tygodni przekopywania si\u0119 przez dokumentacj\u0119.<\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Przegl\u0105d architektury AEM<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bez zag\u0142\u0119biania si\u0119 w szczeg\u00f3\u0142y techniczne, pokr\u00f3tce przedstawimy architektur\u0119 AEM. Ten przegl\u0105d jest kluczowy, poniewa\u017c podkre\u015bla podstawowe zasady, kt\u00f3re bezpo\u015brednio wp\u0142ywaj\u0105 na g\u0142\u00f3wn\u0105 metryk\u0119 oceny wydajno\u015bci Twojej witryny: czas odpowiedzi na \u017c\u0105danie u\u017cytkownika.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W skr\u00f3cie, architektura AEM jest zorganizowana wok\u00f3\u0142 czterech g\u0142\u00f3wnych instancji: Author, Publisher, Dispatcher i Load balancer. Pomy\u015bl o nich jak o dobrze skoordynowanej grupie tanecznej: Author pisze ruchy, Publisher je wykonuje, Dispatcher kieruje, a Load Balancer dba o to, by wszyscy dotrzymywali kroku. Zapewniaj\u0105 one, \u017ce nowe tre\u015bci pojawiaj\u0105 si\u0119 p\u0142ynnie i szybko \u0142aduj\u0105 si\u0119 dla u\u017cytkownik\u00f3w.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Instancja <strong>Author <\/strong>jest rodzajem piaskownicy do tworzenia i modyfikowania tre\u015bci. To tutaj strony internetowe s\u0105 tworzone, kategoryzowane i modyfikowane, a tak\u017ce przechowywane s\u0105 wszelkie media u\u017cywane w Twojej witrynie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Instancja <strong>Publisher <\/strong>to aktywna wersja Twoich tre\u015bci, dost\u0119pna do przegl\u0105dania przez u\u017cytkownik\u00f3w. Gdy tre\u015b\u0107 zostanie zatwierdzona do publikacji w \u015brodowisku autora, jest wysy\u0142ana do warstwy wydawniczej (publisher tier).\u00a0\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Instancja <strong>Dispatcher <\/strong>jest odpowiedzialna za buforowanie (caching) i r\u00f3wnowa\u017cenie obci\u0105\u017cenia (load balancing), czyli kierowanie ruchu do \u015bcie\u017cek, kt\u00f3re zapewniaj\u0105 mo\u017cliwie najkr\u00f3tszy czas \u0142adowania.\u00a0\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wreszcie, <strong>Load balancer<\/strong>. Tak, zadanie r\u00f3wnowa\u017cenia obci\u0105\u017cenia jest ju\u017c wykonywane przez Dispatcher, ale to \u015brodowisko istnieje, aby dystrybuowa\u0107 ruch od tw\u00f3rc\u00f3w tre\u015bci i u\u017cytkownik\u00f3w pomi\u0119dzy \u015brodowiskami autora, wydawcy i Dispatchera, je\u015bli jest ich wi\u0119cej ni\u017c jedno.W idealnych warunkach jest to perfekcyjnie zaaran\u017cowany spektakl, w kt\u00f3rym nikt nie pope\u0142nia b\u0142\u0119du. Koncepcja <a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/ccms\/\">AEM CCMS<\/a> podkre\u015bla skalowalno\u015b\u0107 i elastyczno\u015b\u0107 AEM, umo\u017cliwiaj\u0105c systemowi rozw\u00f3j wraz z Twoim biznesem. Jednak\u017ce, w du\u017cych projektach, wraz ze wzrostem wolumenu tre\u015bci, ro\u015bnie r\u00f3wnie\u017c ryzyko zak\u0142\u00f3ce\u0144 w r\u00f3\u017cnych komponentach. Zrozumienie, jak monitorowa\u0107, zapobiega\u0107 i, idealnie, przewidywa\u0107 te problemy, jest kluczowe. Poni\u017csze praktyki pomog\u0105 Ci to osi\u0105gn\u0105\u0107.<\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Optymalizacja tre\u015bci<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Adobe Experience Manager zawiera kilka r\u00f3\u017cnych typ\u00f3w zasob\u00f3w skategoryzowanych jako tre\u015b\u0107. Dla ka\u017cdego typu istniej\u0105 bie\u017c\u0105ce mo\u017cliwo\u015bci optymalizacji, kt\u00f3re warto wykorzysta\u0107, aby utrzyma\u0107 wysoki poziom wydajno\u015bci AEM.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Poprawa czasu \u0142adowania obraz\u00f3w<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Jako\u015b\u0107 obraz\u00f3w jest kluczowa dla postrzegania Twojej strony internetowej. W du\u017cym stopniu wp\u0142ywa na to, jak widz\u0105 j\u0105 odwiedzaj\u0105cy. Jednak\u017ce, wysokiej jako\u015bci obrazy mog\u0105 spowalnia\u0107 czas \u0142adowania i wydajno\u015b\u0107 witryny. Korzystaj\u0105c z poni\u017cszych metod, mo\u017cesz zr\u00f3wnowa\u017cy\u0107 prac\u0119 z zasobami wizualnymi, aby osi\u0105gn\u0105\u0107 szybk\u0105 odpowied\u017a i nie straci\u0107 atrakcyjno\u015bci wizualnej witryny w oczach odwiedzaj\u0105cego.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Podej\u015bcie lazy load. <\/strong>Tak, to rzadki przypadek \u201epowoli, a daleko\u201d.<strong> <\/strong>Technika lazy loading oznacza, \u017ce \u0142adowanie niekt\u00f3rych komponent\u00f3w strony, cz\u0119sto obraz\u00f3w, jest op\u00f3\u017anione do momentu, a\u017c stan\u0105 si\u0119 niezb\u0119dne, czyli do momentu, gdy u\u017cytkownik zacznie z nimi wchodzi\u0107 w interakcj\u0119. Adobe Experience Manager domy\u015blnie obs\u0142uguje lazy loading. Odbywa si\u0119 to za po\u015brednictwem komponentu obrazu z komponent\u00f3w rdzeniowych AEM. Wystarczy wybra\u0107 t\u0119 opcj\u0119 w oknie dialogowym projektu (w sekcji Zasady).<\/li>\n\n\n\n<li><strong>Optymalizacja formatu.<\/strong> Spo\u015br\u00f3d wielu dost\u0119pnych dzi\u015b format\u00f3w obraz\u00f3w, niekt\u00f3re lepiej odpowiadaj\u0105 okre\u015blonym warunkom. Na przyk\u0142ad, pliki SVG mo\u017cna zmienia\u0107 rozmiar bez utraty jako\u015bci.<\/li>\n\n\n\n<li><strong>Techniki adaptacyjne. <\/strong>U\u017cytkownicy mobilni nie potrzebuj\u0105 takiej samej jako\u015bci obraz\u00f3w, jak\u0105 widz\u0105 odwiedzaj\u0105cy Twoj\u0105 stron\u0119 na komputerze. AEM obs\u0142uguje metod\u0119 Dynamic Media, kt\u00f3ra oszcz\u0119dza wi\u0119cej zasob\u00f3w w por\u00f3wnaniu ze star\u0105 metod\u0105 renderowania.<\/li>\n\n\n\n<li><strong>Buforowanie obraz\u00f3w.<\/strong> Kategoryzuj obrazy na swojej stronie pod k\u0105tem cz\u0119stotliwo\u015bci ich rotacji. Pomo\u017ce to zrozumie\u0107, kt\u00f3re zasoby wizualne mo\u017cesz przechowywa\u0107 w pami\u0119ci podr\u0119cznej przez d\u0142u\u017cszy czas.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Minifikacja kodu<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Metoda ta polega na eliminowaniu niepotrzebnych lub przestarza\u0142ych danych bez wp\u0142ywu na przetwarzanie strony internetowej przez przegl\u0105dark\u0119. Podczas procesu minifikacji usuwane s\u0105 komentarze do kodu i formatowania, nieu\u017cywany kod, stosowane s\u0105 kr\u00f3tsze nazwy zmiennych i funkcji itd.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zmniejsza to rozmiar zasob\u00f3w (JavaScript) i, co najwa\u017cniejsze dla nas, poprawia czas \u0142adowania strony. AEM obs\u0142uguje minifikacj\u0119 plik\u00f3w JavaScript poprzez generowanie minifikowanego kodu dla zmian semantycznych.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Fragmenty do\u015bwiadcze\u0144 i tre\u015bci<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Z za\u0142o\u017cenia funkcje <a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/content-fragments-vs-experience-fragments\/\">Fragment\u00f3w Tre\u015bci i Fragment\u00f3w Do\u015bwiadcze\u0144<\/a> (CF i XF) zosta\u0142y wprowadzone w celu uproszczenia zarz\u0105dzania tre\u015bci\u0105 i jej ponownego wykorzystania, ale mog\u0105 by\u0107 r\u00f3wnie\u017c u\u017cywane do opracowywania przydatnych strategii buforowania.<\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Buforowanie i renderowanie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Om\u00f3wili\u015bmy ju\u017c temat buforowania w optymalizacji wydajno\u015bci AEM. Teraz zag\u0142\u0119bimy si\u0119 w niego bardziej. Odpowiednia strategia buforowania i renderowania pomo\u017ce Ci w pe\u0142ni wykorzysta\u0107 implementacj\u0119 AEM. Powinna ona uwzgl\u0119dnia\u0107 Twoje zasoby i wymagany poziom wydajno\u015bci.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Optymalizacja renderowania w AEM<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Na pocz\u0105tek, zajmijmy si\u0119 koncepcjami renderowania po stronie klienta (CSR) i renderowania po stronie serwera (SSR). Kluczowa r\u00f3\u017cnica mi\u0119dzy CSR a SSR polega na tym, gdzie odbywa si\u0119 renderowanie. W CSR klient odpowiada za renderowanie. Serwer dostarcza jedynie pusty plik HTML. Stamt\u0105d przegl\u0105darka zajmuje si\u0119 reszt\u0105 procesu renderowania. W przypadku <a href=\"https:\/\/experienceleague.adobe.com\/en\/docs\/experience-manager-cloud-service\/content\/implementing\/developing\/hybrid\/ssr\" target=\"_blank\" rel=\"noopener\">renderowania po stronie serwera<\/a> (SSR) serwer renderuje stron\u0119 przed wys\u0142aniem jej do klienta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W przypadku bogatych w tre\u015b\u0107 aplikacji jednostronicowych warto rozwa\u017cy\u0107 renderowanie po stronie serwera dla niekt\u00f3rych tre\u015bci, aby przyspieszy\u0107 pocz\u0105tkowe \u0142adowanie strony. Chocia\u017c AEM w pe\u0142ni wspiera funkcj\u0119 SSR w takich przypadkach, zaleca si\u0119 dok\u0142adne rozwa\u017cenie, czy wysi\u0142ek jest wart korzy\u015bci, zw\u0142aszcza bior\u0105c pod uwag\u0119 d\u0142ugoterminow\u0105 konserwacj\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SSR staje si\u0119 szczeg\u00f3lnie przydatne, je\u015bli Twoja witryna potrzebuje wsparcia w jednej z tych dziedzin:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>SEO<\/strong>: Czy SSR jest niezb\u0119dne do prawid\u0142owego indeksowania Twojej witryny przez wyszukiwarki? Pomimo post\u0119p\u00f3w, wyszukiwarki mog\u0105 by\u0107 kapry\u015bne w stosunku do JavaScriptu. Dlatego SSR mo\u017ce nadal by\u0107 najlepszym przyjacielem Twojej witryny (i nie zapomnij przestrzega\u0107 najlepszych praktyk <a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/aem-seo\/\">AEM SEO<\/a>).<\/li>\n\n\n\n<li><strong>Szybko\u015b\u0107 strony: <\/strong>Jak SSR wp\u0142ywa na szybko\u015b\u0107 w rzeczywistych \u015brodowiskach i do\u015bwiadczenie u\u017cytkownika? Je\u015bli Twoi u\u017cytkownicy s\u0105 niecierpliwi i wymagaj\u0105cy (a kto dzi\u015b nie jest?), to jest to wa\u017cny punkt do rozwa\u017cenia.<\/li>\n<\/ul>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6ac539d175a07&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6ac539d175a07\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"977\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"http:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-1024x977.png\" alt=\"Renderowanie po stronie klienta a renderowanie po stronie serwera: Decyzja o tym, gdzie renderowa&#x107; tre&#x15B;ci, mo&#x17C;e znacz&#x105;co wp&#x142;yn&#x105;&#x107; na SEO i szybko&#x15B;&#x107; strony.\" class=\"wp-image-9844\" srcset=\"https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-1024x977.png 1024w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-300x286.png 300w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-768x733.png 768w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-1536x1465.png 1536w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Client-Side-vs.-Server-Side-Rendering-2048x1954.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Renderowanie po stronie klienta a renderowanie po stronie serwera: Decyzja o tym, gdzie renderowa\u0107 tre\u015bci, mo\u017ce znacz\u0105co wp\u0142yn\u0105\u0107 na SEO i szybko\u015b\u0107 strony.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Optymalizacja buforowania AEM<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/dispatcher-cache\/\">Rola Dispatcher Cache<\/a> odgrywa tu kluczow\u0105 rol\u0119. Jedn\u0105 z najlepszych praktyk optymalizacji wydajno\u015bci AEM jest buforowanie stron lub fragment\u00f3w AEM w dispatcherze AEM. W tym przypadku Dispatcher Cache dzia\u0142a jako bufor odwr\u00f3conego proxy, kt\u00f3ry znajduje si\u0119 mi\u0119dzy AEM a przegl\u0105dark\u0105 u\u017cytkownika ko\u0144cowego. Pami\u0119\u0107 podr\u0119czna przechowuje kolejne kopie tre\u015bci, kt\u00f3re mog\u0105 by\u0107 \u017c\u0105dane bezpo\u015brednio z pami\u0119ci podr\u0119cznej, a nie z samego AEM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To, co czyni t\u0119 funkcj\u0119 jeszcze bardziej atrakcyjn\u0105, to fakt, \u017ce u\u017cytkownicy mog\u0105 skonfigurowa\u0107 Dispatcher Cache do buforowania okre\u015blonych typ\u00f3w tre\u015bci, takich jak obrazy lub pliki JavaScript, lub do buforowania w warstwach, od stron po sekcje witryny.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6ac539d175eb0&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6ac539d175eb0\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1010\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"http:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-1024x1010.jpg\" alt=\"Dispatcher Cache: Odwrotny serwer proxy, kt&#xF3;ry przechowuje buforowan&#x105; zawarto&#x15B;&#x107; w celu szybszego dostarczania, poprawiaj&#x105;c wydajno&#x15B;&#x107; AEM.\" class=\"wp-image-9845\" srcset=\"https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-1024x1010.jpg 1024w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-300x296.jpg 300w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-768x758.jpg 768w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-1536x1515.jpg 1536w, https:\/\/axamit.com\/wp-content\/uploads\/2024\/09\/Dispatcher-Caching-Workflow-2048x2020.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Dispatcher Cache: Odwrotny serwer proxy, kt\u00f3ry przechowuje buforowan\u0105 zawarto\u015b\u0107 w celu szybszego dostarczania, poprawiaj\u0105c wydajno\u015b\u0107 AEM.<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Testowanie i optymalizacja<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Jeste\u015b ju\u017c prawie na mecie. Pozosta\u0142 tylko ma\u0142y element uk\u0142adanki \u2014 sprawd\u017amy, czy wszystkie zaimplementowane metody dzia\u0142aj\u0105 prawid\u0142owo. Istniej\u0105 r\u00f3\u017cne metody i narz\u0119dzia do testowania wydajno\u015bci i dostrajania AEM, dost\u0119pne niezale\u017cnie lub komercyjnie.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Testowanie wydajno\u015bci AEM<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Testowanie mo\u017ce by\u0107 przeprowadzane na instancjach Publisher, instancjach Author lub na obu, w zale\u017cno\u015bci od wymaga\u0144. Istnieje wiele strategii i metodologii, ale nale\u017cy stosowa\u0107 te, kt\u00f3re jak najdok\u0142adniej na\u015bladuj\u0105 rzeczywiste warunki.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Symulacja rzeczywisto\u015bci.<\/strong> To oczywisty warunek udanego testowania, ale nie zawsze \u0142atwy do spe\u0142nienia. U\u017cywaj ilo\u015bci tre\u015bci podobnych do produkcyjnych. Testuj kod, sprz\u0119t i konfiguracj\u0119 sieci przygotowywan\u0105 do produkcji.<\/li>\n\n\n\n<li><strong>Cele testowania.<\/strong> Przed rozpocz\u0119ciem testowania musimy okre\u015bli\u0107 obci\u0105\u017cenia i akceptowalne czasy odpowiedzi. Je\u015bli ma miejsce migracja, czas odpowiedzi musi by\u0107 co najwy\u017cej zgodny z obecnym \u015brodowiskiem produkcyjnym. Je\u015bli chodzi o poziom obci\u0105\u017cenia, dobr\u0105 praktyk\u0105 jest ustawienie go na dwukrotno\u015b\u0107 rzeczywistego obci\u0105\u017cenia szczytowego.<\/li>\n\n\n\n<li><strong>Narz\u0119dzia.<\/strong> Dost\u0119pnych jest wiele komercyjnych narz\u0119dzi do testowania. Na przyk\u0142ad <a href=\"https:\/\/experienceleague.adobe.com\/en\/docs\/experience-manager-65\/content\/implementing\/developing\/testing\/tough-day\" target=\"_blank\" rel=\"noopener\">Tough Day<\/a> firmy Adobe mo\u017ce przeprowadza\u0107 testy obci\u0105\u017ceniowe r\u00f3\u017cnych instancji AEM i zbiera\u0107 dane dotycz\u0105ce wydajno\u015bci. Do testowania witryn mobilnych lub responsywnych u\u017cyj narz\u0119dzi symuluj\u0105cych wolne po\u0142\u0105czenia, takie jak 3G lub Edge.\u00a0<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Optymalizacja wydajno\u015bci AEM<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Dobrym pocz\u0105tkiem optymalizacji Twojej strony internetowej jest por\u00f3wnanie jej z normami bran\u017cowymi i czo\u0142owymi konkurentami. Zapewnia to zgodno\u015b\u0107 z aktualnymi standardami bran\u017cowymi i daje jasny obraz technologii, kt\u00f3re b\u0119dziesz musia\u0142 wdro\u017cy\u0107 w najbli\u017cszej przysz\u0142o\u015bci, aby wyprzedzi\u0107 konkurencj\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Niekt\u00f3re p\u0142atne us\u0142ugi pozwalaj\u0105 por\u00f3wna\u0107 wydajno\u015b\u0107 i ranking Twojej witryny z witrynami konkurencji. SimilarWeb, Ahrefs i Semrush to dobre przyk\u0142ady takich us\u0142ug. Alternatywnie, mo\u017cesz r\u0119cznie analizowa\u0107 wydajno\u015b\u0107 witryn konkurencji, por\u00f3wnuj\u0105c ich metryki ze standardami bran\u017cowymi i wydajno\u015bci\u0105 w\u0142asnej witryny.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W\u015br\u00f3d wewn\u0119trznych zasob\u00f3w i narz\u0119dzi przydatnych do ostatecznego dostrajania wydajno\u015bci s\u0105 Monitorowanie Wydajno\u015bci i Tryb Deweloperski. <a href=\"https:\/\/experienceleague.adobe.com\/en\/docs\/experience-manager-65\/content\/implementing\/deploying\/configuring\/monitoring-and-maintaining#monitoring-performance\" target=\"_blank\" rel=\"noopener\">Monitorowanie Wydajno\u015bci<\/a> to zestaw dokumentacji, kt\u00f3ra pomaga w diagnozowaniu problem\u00f3w i identyfikowaniu mo\u017cliwo\u015bci optymalizacji. Prze\u0142\u0105czenie na <a href=\"https:\/\/experienceleague.adobe.com\/en\/docs\/events\/experience-manager-gems-recordings\/gems2014\/aem-developer-mode\" target=\"_blank\" rel=\"noopener\">Tryb Deweloperski<\/a> w interfejsie u\u017cytkownika Author UI pozwoli Ci sprawdzi\u0107 czasy renderowania dla ka\u017cdego komponentu strony oraz \u015blady stosu b\u0142\u0119d\u00f3w.<\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Podsumowanie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Optymalizacja wydajno\u015bci AEM to z\u0142o\u017cone zagadnienie. Wymaga wieloaspektowego podej\u015bcia i wielu zasob\u00f3w, jak pokazano powy\u017cej. Ustrukturyzowane informacje zawarte w tym artykule powinny przygotowa\u0107 Ci\u0119 do rozwi\u0105zania tego zadania krok po kroku.\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jednak\u017ce, je\u015bli masz zrozumia\u0142\u0105 ch\u0119\u0107 delegowania tego zadania profesjonalistom, taka opcja jest r\u00f3wnie\u017c dost\u0119pna. <a href=\"http:\/\/axamit.com\/pl\/?page_id=19741\">Do\u015bwiadczeni konsultanci AEM<\/a> posiadaj\u0105 wiedz\u0119 i zasoby, aby w pe\u0142ni wykorzysta\u0107 Twoj\u0105 implementacj\u0119 AEM i zapewni\u0107 metody precyzyjnego dostrajania, dopasowane do Twoich cel\u00f3w biznesowych.\u00a0<\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Adobe Experience Manager ma opini\u0119 najbardziej zaawansowanego systemu zarz\u0105dzania tre\u015bci\u0105 na \u015bwiecie, ale ma to swoj\u0105 cen\u0119 \u2014 [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":24671,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[157],"tags":[],"class_list":["post-22898","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adobe-experience-manager"],"acf":{"cta":"Give Us a Call","phone":"+1 (438) 383-6878","meta-description":"Odkryj praktyczne techniki, aby zwi\u0119kszy\u0107 wydajno\u015b\u0107 Adobe Experience Manager i zapewni\u0107 bezproblemowe do\u015bwiadczenie dla swoich u\u017cytkownik\u00f3w."},"_links":{"self":[{"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/posts\/22898","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/comments?post=22898"}],"version-history":[{"count":1,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/posts\/22898\/revisions"}],"predecessor-version":[{"id":22899,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/posts\/22898\/revisions\/22899"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/media\/24671"}],"wp:attachment":[{"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/media?parent=22898"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/categories?post=22898"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/axamit.com\/pl\/wp-json\/wp\/v2\/tags?post=22898"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}