{"id":231174,"date":"2022-12-30T18:41:00","date_gmt":"2022-12-30T15:41:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231174"},"modified":"2022-12-30T18:44:05","modified_gmt":"2022-12-30T15:44:05","slug":"zrozumienie-buforowania-w-wordpressie-czesc-1","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/zrozumienie-buforowania-w-wordpressie-czesc-1\/","title":{"rendered":"Zrozumienie buforowania w WordPressie, cz\u0119\u015b\u0107 1"},"content":{"rendered":"\n<p>W maju napisa\u0142em artyku\u0142 o <a href=\"https:\/\/wordpress.mediadoma.com\/pl\/uzywasz-przejsciowek-wordpress-zamiast-plikow-cookie\/\" title=\"korzystaniu z API WordPress Transients.\">korzystaniu z API WordPress Transients.<\/a> Podsumowuj\u0119 artyku\u0142 w ten spos\u00f3b:<\/p>\n<blockquote>\n<p>Aby zasymulowa\u0107 pliki cookie i ich funkcj\u0119 wyga\u015bni\u0119cia, op\u0142acalnym rozwi\u0105zaniem mo\u017ce by\u0107 u\u017cycie przej\u015bci\u00f3wek WordPress.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/pl\/uzywasz-przejsciowek-wordpress-zamiast-plikow-cookie\/\">https:\/\/wordpress.mediadoma.com\/pl\/uzywasz-przejsciowek-wordpress-zamiast-plikow-cookie\/<\/a><\/p>\n<\/blockquote>\n<p>Chocia\u017c celem artyku\u0142u by\u0142o nakre\u015blenie podstaw, w jaki spos\u00f3b mo\u017cemy zaprojektowa\u0107 klas\u0119 do pracy z interfejsem API Transients w celu symulacji zachowania plik\u00f3w cookie, jednym z efekt\u00f3w ubocznych artyku\u0142u jest to, \u017ce nie wykona\u0142a dobrej pracy wyja\u015bnienia, jak dzia\u0142a interfejs API Transients (i, przez proxy, jak dzia\u0142a MySQL).<\/p>\n<p>Zwr\u00f3ci\u0142 mi na to uwag\u0119 przez e-mail David z <a href=\"https:\/\/updraftplus.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">UpDraft Plus.<\/a><\/p>\n<p>Pomy\u015bla\u0142em wi\u0119c, \u017ce warto porozmawia\u0107 o koncepcji buforowania z poziomu praktycznego, o tym, jak jest zaimplementowane w WordPress, a nast\u0119pnie przyjrze\u0107 si\u0119, jak wykorzysta\u0107 wtyczki lub nowsz\u0105 technologi\u0119, aby lepiej zasila\u0107 nasze witryny i aplikacje, a tak\u017ce lepiej rozumie\u0107.<\/p>\n<h2>Zrozumienie buforowania: podstawy<\/h2>\n<p>Koncepcja buforowania jest stosunkowo prosta. Ale my\u015bl\u0119, \u017ce najlepiej to zademonstrowa\u0107, m\u00f3wi\u0105c najpierw o serializacji i pobieraniu danych bez buforowania.<\/p>\n<h3>Bez buforowania<\/h3>\n<h4>Zapisywanie danych<\/h4>\n<p>Za ka\u017cdym razem, gdy zapisujesz informacje w bazowej bazie danych, rejestrujesz rekord \u2013 lub seri\u0119 rekord\u00f3w \u2013 w bazie danych.<\/p>\n<p>Na przyk\u0142ad, gdy publikujesz post, zapiszesz rekord w tabeli dla post\u00f3w i tabeli dla metadanych postu, z kt\u00f3rych ka\u017cdy jest powi\u0105zany identyfikatorem posta.<\/p>\n<p>W tym po\u015bcie nie ma znaczenia, w jaki spos\u00f3b s\u0105 ze sob\u0105 powi\u0105zane.<\/p>\n<p>Zamiast tego w tej cz\u0119\u015bci nale\u017cy zrozumie\u0107, \u017ce gdy dane s\u0105 zapisywane w bazie danych, tworzony jest co najmniej jeden rekord, je\u015bli nie wiele.<\/p>\n<h4>Czytanie danych<\/h4>\n<p>Gdy odwiedzaj\u0105cy l\u0105duje na stronie, aby przeczyta\u0107 ten konkretny post, wszystkie informacje dotycz\u0105ce tego posta zostan\u0105 pobrane z bazy danych, przes\u0142ane do aplikacji WordPress, a nast\u0119pnie wyrenderowane na interfejsie u\u017cytkownika.<\/p>\n<p>Pomy\u015bl o tym ca\u0142ym procesie jako o podr\u00f3\u017cy:<\/p>\n<ol>\n<li>\u2753odwiedzaj\u0105cy prosi o stron\u0119,<\/li>\n<li>\ud83d\udd0d serwer WWW zidentyfikowa\u0142 jak\u0105 stron\u0119 za\u0142adowa\u0107,<\/li>\n<li>\ud83d\udcc2 strona jest pobierana z bazy danych z wielu tabel,<\/li>\n<li>\ud83c\udfd7 dane s\u0105 gromadzone i przesy\u0142ane do aplikacji podstawowej,<\/li>\n<li>\ud83d\udda5 dane prezentowane s\u0105 u\u017cytkownikowi.<\/li>\n<\/ol>\n<p>Tak wi\u0119c podr\u00f3\u017c zaczyna si\u0119, gdy u\u017cytkownik za\u017c\u0105da strony i ko\u0144czy si\u0119, gdy informacje s\u0105 mu prezentowane w przegl\u0105darce.<\/p>\n<h4>To podr\u00f3\u017c<\/h4>\n<p>I bez buforowania dzieje si\u0119 to dla ka\u017cdego u\u017cytkownika. Oznacza to, \u017ce dla ka\u017cdego u\u017cytkownika, kt\u00f3ry odwiedza Twoj\u0105 witryn\u0119, nale\u017cy odby\u0107 podr\u00f3\u017c.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-159466-61e6f57b465f7.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-159466-61e6f57b465f7.png\" alt=\"Zrozumienie buforowania w WordPressie, cz\u0119\u015b\u0107 1\"><\/a><\/p>\n<p>Mo\u017ce to by\u0107 bardzo kosztowne pod wzgl\u0119dem zasob\u00f3w i czasu (szczeg\u00f3lnie w zale\u017cno\u015bci od rozmiaru bazy danych).<\/p>\n<p>Ale w tym miejscu mo\u017ce pojawi\u0107 si\u0119 buforowanie.<\/p>\n<h3>Przed wej\u015bciem do buforowania<\/h3>\n<p>Ide\u0105 buforowania jest przyspieszenie ca\u0142ego procesu. Oznacza to, \u017ce je\u015bli wiemy, \u017ce zbli\u017ca si\u0119 wycieczka, mo\u017cemy przechowywa\u0107 informacje w takim miejscu, aby by\u0142y ju\u017c zebrane i szybsze do odzyskania.<\/p>\n<p>Zanim jednak om\u00f3wi\u0119, co powiem w nast\u0119pnym po\u015bcie, zauwa\u017c, \u017ce jest to jak podr\u00f3\u017c na dysk twardy serwera, na kt\u00f3rym hostowana jest witryna, za ka\u017cdym razem, gdy odwiedzana jest witryna.<\/p>\n<p>Poniewa\u017c ostatecznie baza danych, pliki i wszystkie zasoby niezb\u0119dne do zasilania witryny znajduj\u0105 si\u0119 na dysku twardym. I tak, takie rzeczy jak dyski p\u00f3\u0142przewodnikowe mog\u0105 przyspieszy\u0107 ten proces, ale nadal nie jest tak optymalny, jak to mo\u017cliwe.<\/p>\n<p>I tu w\u0142a\u015bnie pojawia si\u0119 buforowanie. Aby lepiej zrozumie\u0107 interfejs API Transients, wa\u017cne jest zrozumienie buforowania, kt\u00f3re najpierw wymaga podstawowego zrozumienia, jak dzia\u0142aj\u0105 bez buforowania.<\/p>\n<h3>To podk\u0142ad<\/h3>\n<p>Potraktuj to wi\u0119c jako podstawowy element wprowadzaj\u0105cy do tego, jak dzia\u0142a witryna oparta na bazie danych bez buforowania. A potem om\u00f3wimy to bardziej w nast\u0119pnym po\u015bcie.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Zrozumienie pami\u0119ci podr\u0119cznej w WordPressie, zaczynaj\u0105c od podstaw i rozumiej\u0105c koncepcj\u0119 podr\u00f3\u017cy po witrynie bez pami\u0119ci podr\u0119cznej.<\/p>\n","protected":false},"author":1,"featured_media":223830,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[721,919,897,836,845,1090,866,815],"tags":[1169],"class_list":["post-231174","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","category-inny","category-kod","category-przewodnik-dla-poczatkujacych","category-samouczki","category-szybkosc-witryny","category-wordpress-7","category-wtyczki","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/comments?post=231174"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231174\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/223830"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=231174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=231174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=231174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}