{"id":32607,"date":"2021-12-31T16:34:00","date_gmt":"2021-12-31T13:34:00","guid":{"rendered":"https:\/\/www.natro.com\/blog\/?p=32607"},"modified":"2022-01-02T16:34:20","modified_gmt":"2022-01-02T13:34:20","slug":"caching-onbellege-alma-nedir-ve-nasil-calisir","status":"publish","type":"post","link":"https:\/\/www.natro.com\/blog\/caching-onbellege-alma-nedir-ve-nasil-calisir\/","title":{"rendered":"Caching (\u00d6nbelle\u011fe Alma) Nedir ve Nas\u0131l \u00c7al\u0131\u015f\u0131r?"},"content":{"rendered":"\n<p>Caching, bilgisayar bilimindeki en \u00f6nemli kavramlardan biridir. Son birka\u00e7 y\u0131lda, bilgi teknolojisi her t\u00fcrl\u00fc i\u015f kolu i\u00e7in muazzam bir \u015fekilde geli\u015fti. Bununla birlikte, yaz\u0131l\u0131m mimarileri giderek daha karma\u015f\u0131k hale geldi ve kullan\u0131c\u0131 say\u0131s\u0131 katlanarak artt\u0131. Bu durum da uygulamalar i\u00e7in performans\u0131n daima en \u00fcst seviyede olmas\u0131 i\u00e7in \u00f6nlemler al\u0131nmas\u0131n\u0131 gerektirdi. Yava\u015f performans, herhangi bir \u015firketin stratejik hedeflerini baltalar veya ula\u015fmak istedi\u011fi konumdan sapt\u0131rabilir, bu y\u00fczden onu iyile\u015ftirmenin mant\u0131kl\u0131 yollar\u0131n\u0131 bulmak \u00e7ok \u00f6nemlidir. Sonu\u00e7 olarak, ek y\u00fcklerden ka\u00e7\u0131nmak, veri alma ve i\u015fleme s\u00fcresini azaltmak zorunlu hale geldi. \u0130\u015fte bu durum, \u00f6nbelle\u011fe alman\u0131n devreye girdi\u011fi ve neden hi\u00e7bir geli\u015ftiricinin art\u0131k onu g\u00f6rmezden gelemedi\u011fi noktad\u0131r.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-caching-nedir\"><span id=\"caching-nedir\"><strong>Caching Nedir?<\/strong><\/span><\/h2>\n\n\n\n<p>Caching, her t\u00fcrl\u00fc uygulaman\u0131n performans\u0131n\u0131 art\u0131rmaya y\u00f6nelik bir mekanizmad\u0131r. Teknik olarak caching; \u201cbir \u00f6nbellekten veri depolama ve bunlara eri\u015fme\u201d i\u015flemidir. Di\u011fer taraftan ise cache (bellek); ayn\u0131 veriler i\u00e7in gelecekteki isteklerin daha h\u0131zl\u0131 sunulabilmesi i\u00e7in verileri depolamay\u0131 ama\u00e7layan bir yaz\u0131l\u0131m veya donan\u0131m bile\u015fenidir.<\/p>\n\n\n\n<p>\u00d6nbelle\u011fe alman\u0131n ortaya \u00e7\u0131kmas\u0131n\u0131n ana nedeni, kal\u0131c\u0131 belleklerden verilere eri\u015fmenin ciddi anlamda zaman almas\u0131d\u0131r. Bu nedenle, veriler al\u0131nd\u0131\u011f\u0131nda veya i\u015flendi\u011finde daha verimli bir bellekte saklanmal\u0131d\u0131r. Birincil amac\u0131 daha yava\u015f veri depolama katmanlar\u0131na eri\u015fme ihtiyac\u0131n\u0131 azaltmak olan y\u00fcksek h\u0131zl\u0131 veri depolama katman\u0131 olarak d\u00fc\u015f\u00fcn\u00fclebilen belle\u011fi, cache olarak adland\u0131rabiliriz. Uygun maliyetli ve verimli olmas\u0131 i\u00e7in \u00f6nbellekler, \u00f6zellikle geleneksel belleklerle kar\u015f\u0131la\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda nispeten daha k\u00fc\u00e7\u00fck olmal\u0131d\u0131r. Bu nedenle genellikle RAM (Rastgele Eri\u015fim Belle\u011fi) ve bir yaz\u0131l\u0131m bile\u015feni gibi h\u0131zl\u0131 eri\u015fim donan\u0131m\u0131 kullan\u0131larak uygulan\u0131r.<\/p>\n\n\n\n<p>Cache sayesinde \u00f6nceden al\u0131nan veya hesaplanan verileri, verimli bir \u015fekilde yeniden kullanmak i\u00e7in bir mekanizma kurmak m\u00fcmk\u00fcnd\u00fcr. Yeni bir istek geldi\u011finde, istenen veriler \u00f6nce \u00f6nbellekte aran\u0131r. \u0130stenen veriler \u00f6nbellekte bulundu\u011funda isabetli bir \u015fekilde e\u015fle\u015ftirilir. Aksi durum ger\u00e7ekle\u015fti\u011finde e\u015fle\u015ftirme yap\u0131lamaz. Asl\u0131nda \u00f6nbellekten gerekli verileri okuman\u0131n, orijinal veri deposundan okumaktan veya sonucu yeniden hesaplamaktan daha h\u0131zl\u0131 oldu\u011fu varsay\u0131l\u0131r. Bu nedenle, \u00f6nbellekten ne kadar \u00e7ok istek sunulabilirse sistem o kadar h\u0131zl\u0131 olacakt\u0131r.<\/p>\n\n\n\n<p>Sonu\u00e7 olarak caching, iyi bir performans elde etmenin olduk\u00e7a basit bir yoludur. Genellikle \u00e7ok karma\u015f\u0131k ve zaman al\u0131c\u0131 bir g\u00f6rev olan algoritma optimizasyonu ile cache kullan\u0131m\u0131 kar\u015f\u0131la\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda performans\u0131n \u00e7ok daha fazla olaca\u011f\u0131 ortadad\u0131r.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Cache temizleme i\u015flemi nas\u0131l yap\u0131l\u0131r \u00f6\u011frenmek i\u00e7in <strong><a href=\"https:\/\/www.natro.com\/blog\/cache-nedir-ve-ne-ise-yarar-cache-temizleme-nasil-yapilir\/?utm_campaign=content&utm_medium=icerik&utm_source=hosting-blog&utm_content=\/blog\/caching-on-bellege-alma-nedir-ve-nasil-calisir\" target=\"_blank\" rel=\"noreferrer noopener\">buradaki<\/a><\/strong> linke t\u0131klayabilirsiniz.<\/p><\/blockquote>\n\n\n\n<h2 id=\"cache-neden-onemlidir\" class=\"wp-block-heading\"><strong>Cache Neden \u00d6nemlidir?<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"800\" height=\"533\" src=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/dreamstime_s_139990440.jpg\" alt=\"\" class=\"wp-image-32397\" srcset=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/dreamstime_s_139990440.jpg 800w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/dreamstime_s_139990440-300x200.jpg 300w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/dreamstime_s_139990440-768x512.jpg 768w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/dreamstime_s_139990440-270x180.jpg 270w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>Caching son derece \u00f6nemlidir. \u00c7\u00fcnk\u00fc geli\u015ftiricilerin \u00f6nemli \u00f6l\u00e7\u00fcde performans iyile\u015ftirmeleri elde etmesine olanak tan\u0131r. Performans iyile\u015ftirmeleri kullan\u0131c\u0131lar i\u00e7in hayati \u00f6nem ta\u015f\u0131maktad\u0131r. Ne kullan\u0131c\u0131lar ne de geli\u015ftiriciler, uygulamalar\u0131 kullan\u0131rken i\u015flemlerin uzun s\u00fcrmesini \u00f6zellikle istemez. Geli\u015ftiriciler, uygulamalar\u0131n en performansl\u0131 s\u00fcr\u00fcm\u00fcn\u00fcn kullan\u0131lmas\u0131n\u0131 ister. Di\u011fer taraftan kullan\u0131c\u0131lar da i\u015flemlerin sadece birka\u00e7 saniye ve hatta mili saniyeler s\u00fcrmesini ister.\u00a0\u015eu bir ger\u00e7ektir ki, hi\u00e7 kimse mesaj\u0131n\u0131n y\u00fcklenip y\u00fcklenmedi\u011fine bakarak zaman\u0131n\u0131 bo\u015fa harcamay\u0131 sevmez.<\/p>\n\n\n\n<p>Ayr\u0131ca, y\u00fcksek performans sunmak o kadar \u00f6nemlidir ki, caching kavram\u0131 bilgisayar teknolojisinde h\u0131zla bir \u015fekilde kabul g\u00f6rm\u00fc\u015ft\u00fcr. Bu durum giderek daha fazla hizmetin onu kulland\u0131\u011f\u0131 ve pratik olarak her yerde haz\u0131r oldu\u011fu anlam\u0131na gelir. Sonu\u00e7 olarak, piyasadaki \u00e7ok say\u0131da uygulama ile rekabet etmek istiyorsan\u0131z, \u00f6nbellek sistemlerini d\u00fczg\u00fcn bir \u015fekilde uygulaman\u0131z gerekiyor. Ayr\u0131ca, kullan\u0131c\u0131lara di\u011fer sistemlere nispeten sistemlerinizin neden daha yava\u015f oldu\u011funu a\u00e7\u0131klamak sizin a\u00e7\u0131n\u0131zdan sorun te\u015fkil edebilir. B\u00f6ylece kullan\u0131c\u0131lar\u0131n kafas\u0131nda soru i\u015fareti b\u0131rakabilirsiniz.<\/p>\n\n\n\n<p>\u00d6nbelle\u011fe alman\u0131n bir di\u011fer \u00f6nemli y\u00f6n\u00fc, her seferinde yeni isteklerde bulunmaktan veya verileri yeniden i\u015flemekten ka\u00e7\u0131nmam\u0131za izin vermesidir. B\u00f6ylece, a\u011f y\u00fck\u00fc gibi ek y\u00fcklerden ka\u00e7\u0131nabilir ve \u00f6zellikle istekler karma\u015f\u0131k ayr\u0131nt\u0131lar i\u00e7eriyorsa CPU kullan\u0131m\u0131n\u0131 azaltabilirsiniz. Bu, makinelerinizin veya sunucular\u0131n\u0131z\u0131n \u00f6mr\u00fcn\u00fc uzat\u0131r. Ayr\u0131ca, yeni istekler yapmaktan ka\u00e7\u0131nmak, ihtiya\u00e7 duyulan toplam istek miktar\u0131n\u0131 azalt\u0131r ve bu da altyap\u0131n\u0131z\u0131n maliyetini azalt\u0131r. \u00d6rne\u011fin; Bulut platformlar\u0131 veya genel API sa\u011flay\u0131c\u0131lar\u0131 ile \u00e7al\u0131\u015f\u0131rken, hizmetler aras\u0131ndaki herhangi bir a\u011f ileti\u015fiminin faturaland\u0131r\u0131lmas\u0131 herkes\u00e7e malumdur. Gereksiz yere yap\u0131lan her istek maliyet olarak kar\u015f\u0131n\u0131za \u00e7\u0131kar.<\/p>\n\n\n\n<h2 id=\"yasanilan-caching-zorluklari\" class=\"wp-block-heading\"><strong>Ya\u015fan\u0131lan Caching Zorluklar\u0131<\/strong><\/h2>\n\n\n\n<p>Caching hi\u00e7bir \u015fekilde basit bir uygulama de\u011fildir ve konunun do\u011fas\u0131nda ka\u00e7\u0131n\u0131lmaz zorluklar vard\u0131r. Kar\u015f\u0131la\u015f\u0131labilecek zorluklardan baz\u0131lar\u0131 a\u015fa\u011f\u0131da kapsaml\u0131 bir \u015fekilde a\u00e7\u0131klanm\u0131\u015ft\u0131r:<\/p>\n\n\n\n<h3 id=\"tutarlilik-problemi\" class=\"wp-block-heading\"><strong>Tutarl\u0131l\u0131k Problemi<\/strong><\/h3>\n\n\n\n<p>Veriler \u00f6nbelle\u011fe al\u0131nd\u0131\u011f\u0131nda bir kopya olu\u015fturuldu\u011fundan, art\u0131k ayn\u0131 verinin iki kopyas\u0131 vard\u0131r. Bu zamanla farkl\u0131la\u015fabilecekleri anlam\u0131na gelir. K\u0131saca caching ile ilgili en \u00f6nemli ve karma\u015f\u0131k problem tutarl\u0131l\u0131k sorunudur. Biri di\u011ferine tercih edilen belirli bir \u00e7\u00f6z\u00fcm yolu yoktur. En iyi yakla\u015f\u0131m gereksinimlere g\u00f6re hareket etmektir. En iyi cache g\u00fcncellemesini belirlemek veya mekanizmay\u0131 ge\u00e7ersiz k\u0131lmak, cache ile ilgili en b\u00fcy\u00fck sorunlardan biridir. Ve belki de bilgisayar biliminde kar\u015f\u0131la\u015f\u0131lan \u00e7\u00f6z\u00fclmesi en zor problemlerden biridir.<\/p>\n\n\n\n<h3 id=\"onbellege-alinacak-verileri-secme\" class=\"wp-block-heading\"><strong>\u00d6nbelle\u011fe Al\u0131nacak Verileri Se\u00e7me<\/strong><\/h3>\n\n\n\n<p>Hemen hemen her t\u00fcrl\u00fc veri \u00f6nbelle\u011fe al\u0131nabilir. Bu, \u00f6nbelle\u011fimizde nelerin bulunaca\u011f\u0131n\u0131 ve nelerin hari\u00e7 tutulaca\u011f\u0131n\u0131 se\u00e7menin sonsuz olas\u0131l\u0131klara sahip oldu\u011fu anlam\u0131na gelir. Bu nedenle \u00e7ok karma\u015f\u0131k bir durum haline gelebilir. Bu sorunla m\u00fccadele ederken, dikkate al\u0131nmas\u0131 gereken baz\u0131 hususlar vard\u0131r. \u0130lk olarak, verilerin s\u0131k s\u0131k de\u011fi\u015fmesini bekliyorsan\u0131z, onu \u00e7ok uzun s\u00fcre \u00f6nbelle\u011fe almak istememelisiniz. Aksi takdirde, kullan\u0131c\u0131lara yanl\u0131\u015f veriler sunabilirsiniz. \u00d6te yandan, bu ayn\u0131 zamanda eski verilere ne kadar s\u00fcre tahamm\u00fcl edebilece\u011finize de ba\u011fl\u0131d\u0131r.<\/p>\n\n\n\n<p>\u0130kinci olarak \u00f6nbelle\u011finiz, olu\u015fturulmas\u0131 veya al\u0131nmas\u0131 \u00e7ok zaman alan, s\u0131k s\u0131k gerekli verileri depolamaya her zaman haz\u0131r olmal\u0131d\u0131r. Bu verileri belirlemek kolay bir i\u015f de\u011fildir ve \u00f6nbelle\u011finizi gereksiz verilerle doldurma riskiniz olabilir.<\/p>\n\n\n\n<p>\u00dc\u00e7\u00fcnc\u00fcs\u00fc, b\u00fcy\u00fck verileri \u00f6nbelle\u011fe alarak, t\u00fcm kullan\u0131labilir belle\u011fi tahmininizden daha \u00e7abuk ve istenmeyecek \u015fekilde doldurabilirsiniz. Sahip oldu\u011funuz RAM, uygulaman\u0131z ve caching sisteminiz aras\u0131nda payla\u015f\u0131l\u0131yorsa, bu bir sorun haline gelebilir. Bu nedenle caching i\u00e7in ayr\u0131lan RAM miktar\u0131n\u0131 s\u0131n\u0131rlaman\u0131z gerekir.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-1024x683.jpg\" alt=\"\" class=\"wp-image-32262\" srcset=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-1024x683.jpg 1024w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-300x200.jpg 300w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-768x513.jpg 768w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-1536x1025.jpg 1536w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-270x180.jpg 270w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir-770x515.jpg 770w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/hosting-nedir.jpg 1687w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 id=\"onbellek-kayiplari-ile-basa-cikmak\" class=\"wp-block-heading\"><strong>\u00d6nbellek Kay\u0131plar\u0131 ile Ba\u015fa \u00c7\u0131kmak<\/strong><\/h3>\n\n\n\n<p>Cache kay\u0131plar\u0131, bir \u00f6nbelle\u011fe sahip olman\u0131n zamana dayal\u0131 maliyetini temsil eder. Asl\u0131nda cache kay\u0131plar\u0131, \u00f6nbellek kullanmayan bir sistemde meydana gelemeyecek gecikmeleri ortaya \u00e7\u0131kar\u0131r. Bu nedenle, bir \u00f6nbelle\u011fe sahip olman\u0131n getirdi\u011fi h\u0131z art\u0131\u015f\u0131ndan yararlanmak i\u00e7in, \u00f6nbellek kay\u0131plar\u0131 nispeten d\u00fc\u015f\u00fck tutulmal\u0131d\u0131r. \u00d6zellikle, cache isabet y\u00fczdelerine k\u0131yasla d\u00fc\u015f\u00fck olmal\u0131d\u0131r. Bu sonuca ula\u015fmak kolay de\u011fildir ve e\u011fer ula\u015f\u0131lamazsa \u00f6nbellek sisteminiz i\u00e7in ek y\u00fckten ba\u015fka bir \u015fey de\u011fildir.<\/p>\n\n\n\n<h2 id=\"caching-turleri-nelerdir\" class=\"wp-block-heading\"><strong>Caching T\u00fcrleri Nelerdir?<\/strong><\/h2>\n\n\n\n<p>Cache genel bir kavram olmas\u0131na ra\u011fmen, di\u011ferlerinden ayr\u0131\u015fan birka\u00e7 taraf\u0131 vard\u0131r. Bu ayr\u0131\u015fan taraflar, her geli\u015ftiricinin \u00f6nbellek kavram\u0131na a\u015fa\u011f\u0131da a\u00e7\u0131kland\u0131\u011f\u0131 gibi ortak bir yakla\u015f\u0131m g\u00f6sterir ve hi\u00e7biri g\u00f6z ard\u0131 edilemez.<\/p>\n\n\n\n<h3 id=\"bellek-ici-caching\" class=\"wp-block-heading\"><strong>Bellek \u0130\u00e7i Caching<\/strong><\/h3>\n\n\n\n<p>Bu yakla\u015f\u0131mda, \u00f6nbelle\u011fe al\u0131nan veriler, orijinal verilerin bulundu\u011fu tipik depolama sisteminden daha h\u0131zl\u0131 oldu\u011fu varsay\u0131lan RAM\u2019 de do\u011frudan depolan\u0131r. Bu t\u00fcr \u00f6nbelle\u011fe alman\u0131n en yayg\u0131n uygulamas\u0131, anahtar\/de\u011fer (key-value) veri tabanlar\u0131na dayal\u0131d\u0131r. Veri tabanlar\u0131 anahtar\/de\u011fer \u00e7iftlerinden olu\u015fan k\u00fcmeler olarak g\u00f6r\u00fclebilir. Anahtar benzersiz bir de\u011ferle temsil edilirken, de\u011fer \u00f6nbelle\u011fe al\u0131nm\u0131\u015f verilerle temsil edilir.<\/p>\n\n\n\n<p>Esasen bu, her bir veri par\u00e7as\u0131n\u0131n benzersiz bir de\u011ferle tan\u0131mland\u0131\u011f\u0131 anlam\u0131na gelir. Bu de\u011feri belirterek, anahtar-de\u011fer veri taban\u0131 ili\u015fkili de\u011feri d\u00f6nd\u00fcr\u00fcr. B\u00f6yle bir \u00e7\u00f6z\u00fcm h\u0131zl\u0131, verimli ve anla\u015f\u0131lmas\u0131 kolayd\u0131r. Bu nedenle, bir cache katman\u0131 olu\u015fturmaya \u00e7al\u0131\u015fan geli\u015ftiriciler genellikle bunu kullanmay\u0131 tercih eder.<\/p>\n\n\n\n<h3 id=\"veri-tabani-caching\" class=\"wp-block-heading\"><strong>Veri Taban\u0131 Caching<\/strong><\/h3>\n\n\n\n<p>Her veri taban\u0131, genellikle bir caching d\u00fczeyiyle beraber gelir. Spesifik olarak, bir veri taban\u0131n\u0131 a\u015f\u0131r\u0131 sorgulamaktan ka\u00e7\u0131nmak i\u00e7in \u00e7o\u011funlukla dahili bir cache kullan\u0131l\u0131r. Y\u00fcr\u00fct\u00fclen son sorgular\u0131n sonucu \u00f6nbelle\u011fe al\u0131n\u0131r ve \u00f6nceden \u00f6nbelle\u011fe al\u0131nan veriler sorguland\u0131\u011f\u0131nda veri taban\u0131 hemen istekleri sa\u011flayabilir. Bu \u015fekilde, istenen \u00f6nbelle\u011fe al\u0131nm\u0131\u015f verilerin ge\u00e7erli oldu\u011fu s\u00fcre boyunca, veri taban\u0131 sorgular\u0131n y\u00fcr\u00fct\u00fclmesini \u00f6nleyebilir. Her veri taban\u0131 bunu farkl\u0131 \u015fekilde uygulayabilse de en pop\u00fcler yakla\u015f\u0131m, anahtar\/de\u011fer \u00e7iftlerini depolayan bir karma tablo kullanmaya dayan\u0131r. Bilindi\u011fi gibi anahtar, de\u011feri aramak ve e\u015fle\u015fmek i\u00e7in kullan\u0131l\u0131r. Bu t\u00fcr \u00f6nbelleklerin genellikle varsay\u0131lan olarak ORM (Nesne \u0130li\u015fkisel E\u015fleme) teknolojileri taraf\u0131ndan sa\u011fland\u0131\u011f\u0131n\u0131 unutmay\u0131n.<\/p>\n\n\n\n<h3 id=\"web-caching\" class=\"wp-block-heading\"><strong>Web Caching<\/strong><\/h3>\n\n\n\n<p>Web Caching iki alt kategoriye ayr\u0131l\u0131r:<\/p>\n\n\n\n<h4 id=\"web-istemcisi-caching\" class=\"wp-block-heading\"><strong>Web \u0130stemcisi Caching<\/strong><\/h4>\n\n\n\n<p>Bu \u00f6nbellek t\u00fcr\u00fc, \u00e7o\u011fu \u0130nternet kullan\u0131c\u0131s\u0131 i\u00e7in tan\u0131d\u0131kt\u0131r ve istemcilerde depolan\u0131r. Genellikle taray\u0131c\u0131lar\u0131n bir par\u00e7as\u0131 oldu\u011fu i\u00e7in \u201c<strong>Web Taray\u0131c\u0131 Caching<\/strong>\u201d olarak da adland\u0131r\u0131l\u0131r. \u00c7ok sezgisel bir \u015fekilde \u00e7al\u0131\u015f\u0131r. Bir taray\u0131c\u0131 bir web sayfas\u0131n\u0131 ilk y\u00fckledi\u011finde, metin, resimler, stil sayfalar\u0131, komut dosyalar\u0131 ve medya dosyalar\u0131 gibi sayfa kaynaklar\u0131n\u0131 depolar. Ayn\u0131 sayfaya bir sonraki t\u0131kland\u0131\u011f\u0131nda, taray\u0131c\u0131 daha \u00f6nce \u00f6nbelle\u011fe al\u0131nm\u0131\u015f kaynaklar\u0131 arayabilir ve bunlar\u0131 kullan\u0131c\u0131n\u0131n makinesinden alabilir. Bu genellikle istenilenleri a\u011fdan indirmekten \u00e7ok daha h\u0131zl\u0131d\u0131r.<\/p>\n\n\n\n<h4 id=\"web-sunucusu-caching\" class=\"wp-block-heading\"><strong>Web Sunucusu Caching<\/strong><\/h4>\n\n\n\n<p>Web sunucu caching, kaynaklar\u0131 yeniden kullanmak \u00fczere sunucu taraf\u0131nda depolamay\u0131 ama\u00e7layan bir mekanizmad\u0131r. Spesifik olarak, b\u00f6yle bir yakla\u015f\u0131m, olu\u015fturulmas\u0131 zaman alan dinamik olarak olu\u015fturulmu\u015f i\u00e7erikle u\u011fra\u015f\u0131rken yararl\u0131d\u0131r. Tersine, statik i\u00e7erik durumunda kullan\u0131\u015fl\u0131 de\u011fildir. Web sunucusu caching sunucular\u0131n a\u015f\u0131r\u0131 y\u00fcklenmesini \u00f6nler, yap\u0131lacak i\u015fi azalt\u0131r ve sayfa sunum h\u0131z\u0131n\u0131 art\u0131r\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/cdn-neden-kullanilir2-1024x768.jpg\" alt=\"\" class=\"wp-image-32364\" srcset=\"https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/cdn-neden-kullanilir2-1024x768.jpg 1024w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/cdn-neden-kullanilir2-300x225.jpg 300w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/cdn-neden-kullanilir2-768x576.jpg 768w, https:\/\/www.natro.com\/blog\/wp-content\/uploads\/2021\/11\/cdn-neden-kullanilir2.jpg 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 id=\"cdn-caching\" class=\"wp-block-heading\"><strong>CDN Caching<\/strong><\/h3>\n\n\n\n<p><strong>CDN (Content Delivery Network)<\/strong>, \u201c\u0130\u00e7erik Da\u011f\u0131t\u0131m A\u011f\u0131\u201d anlam\u0131na gelir ve web sayfalar\u0131, stil sayfalar\u0131, komut dosyalar\u0131 ve medya dosyalar\u0131 gibi i\u00e7eri\u011fi proxy sunucular\u0131nda \u00f6nbelle\u011fe almay\u0131 ama\u00e7lar. Kullan\u0131c\u0131 ve kaynak sunucu aras\u0131nda kaynaklar\u0131n\u0131 depolayan bir a\u011f ge\u00e7idi sistemi olarak g\u00f6r\u00fclebilir. Kullan\u0131c\u0131 bir kayna\u011fa ihtiya\u00e7 duydu\u011funda, bir proxy sunucusu onu durdurur ve bir kopyas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol eder. E\u011fer \u00f6yleyse, kaynak hemen kullan\u0131c\u0131ya teslim edilir; aksi takdirde istek kaynak sunucuya iletilir. Bu proxy sunucular\u0131 d\u00fcnya \u00e7ap\u0131nda \u00e7ok say\u0131da konuma yerle\u015ftirilir ve kullan\u0131c\u0131 istekleri dinamik olarak en yak\u0131n\u0131na y\u00f6nlendirilir. Bu nedenle, son kullan\u0131c\u0131lara kaynak sunuculardan daha yak\u0131n olmalar\u0131 beklenir, bu da a\u011f gecikmesinde bir azalma anlam\u0131na gelir. Ayr\u0131ca, kaynak sunuculara yap\u0131lan istek say\u0131s\u0131n\u0131 da azalt\u0131r.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>CDN nedir, ne i\u015fe yarar, CDN ara\u00e7lar\u0131 nelerdir \u00f6\u011frenmek i\u00e7in <strong><a href=\"https:\/\/www.natro.com\/blog\/cdn-nedir-avantajlari-nelerdir-ve-ne-ise-yarar\/?utm_campaign=content&utm_medium=icerik&utm_source=hosting-blog&utm_content=\/blog\/caching-on-bellege-alma-nedir-ve-nasil-calisir\" target=\"_blank\" rel=\"noreferrer noopener\">buradaki<\/a><\/strong> yaz\u0131m\u0131z\u0131 okuyabilirsiniz.<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"Caching, bilgisayar bilimindeki en \u00f6nemli kavramlardan biridir. Son birka\u00e7 y\u0131lda, bilgi teknolojisi her t\u00fcrl\u00fc i\u015f kolu i\u00e7in muazzam&hellip;\n","protected":false},"author":7,"featured_media":32461,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[652,36],"tags":[],"class_list":{"0":"post-32607","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-nedir","8":"category-sunucu"},"_links":{"self":[{"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/posts\/32607","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/comments?post=32607"}],"version-history":[{"count":1,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/posts\/32607\/revisions"}],"predecessor-version":[{"id":32608,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/posts\/32607\/revisions\/32608"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/media\/32461"}],"wp:attachment":[{"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/media?parent=32607"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/categories?post=32607"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.natro.com\/blog\/wp-json\/wp\/v2\/tags?post=32607"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}