{"id":988,"date":"2022-09-11T09:44:28","date_gmt":"2022-09-11T09:44:28","guid":{"rendered":"https:\/\/sunucucozumleri.com\/?p=988"},"modified":"2022-10-09T19:42:26","modified_gmt":"2022-10-09T19:42:26","slug":"wordpress-icin-performans-ve-hizlandirma-islemleri","status":"publish","type":"post","link":"https:\/\/sunucucozumleri.com\/blog\/wordpress-icin-performans-ve-hizlandirma-islemleri\/","title":{"rendered":"WordPress i\u00e7in Performans ve H\u0131zland\u0131rma \u0130\u015flemleri"},"content":{"rendered":"<p>Merhabalar,<br \/>\nBug\u00fcn makalemizde WordPress i\u00e7erik y\u00f6netim sistemi kullanan kullan\u0131c\u0131lara y\u00f6nelik olarak WordPress H\u0131zland\u0131rma i\u015flemlerini anlataca\u011f\u0131z. \u00d6ncelikle makale seviyesi minimum Orta d\u00fczey teknik bilgisi bulunan kullan\u0131c\u0131lar i\u00e7in olup teknik bilgisi bulunmayan ki\u015filerin <a href=\"https:\/\/sunucucozumleri.com\/blog\/hosting\/fast-web-hosting\/\">hosting<\/a> \/\u00a0<a title=\"sunucu\" href=\"https:\/\/sunucucozumleri.com\/\" target=\"_blank\" rel=\"noopener\">sunucu<\/a>\u00a0firmalar\u0131ndan destek istemeleri gerekmektedir.<\/p>\n<p><a title=\"WordPress Hosting\" href=\"https:\/\/sunucucozumleri.com\/hosting\/wordpress-hosting\/\" target=\"_blank\" rel=\"noopener\"><strong>WordPress<\/strong><\/a>&#8216;in MySQL veritaban\u0131 \u00fczerinde ko\u015ftu\u011funu hepimiz biliyoruzdur. Makalemizde yapaca\u011f\u0131m\u0131z i\u015flemler MySQL veritaban\u0131 \u00fczerinde yapaca\u011f\u0131m\u0131z i\u015flemlerdir.<\/p>\n<p>Problem Nedir?<\/p>\n<p><span lang=\"tr\">Hepimizin bildi\u011fi gibi, WordPress, \u00f6zellikle siteniz b\u00fcy\u00fcmeye ba\u015flad\u0131\u011f\u0131nda optimize edilmedi\u011fini takdirde h\u0131z zorluklar\u0131na yol a\u00e7an bir veritaban\u0131 uygulamas\u0131d\u0131r.<\/span><\/p>\n<p>Peki WordPress sitelerimiz neden yava\u015f a\u00e7\u0131l\u0131r?<\/p>\n<ul>\n<li>Database<\/li>\n<li>PHP<\/li>\n<li>CSS<\/li>\n<li>JS<\/li>\n<li>Images<\/li>\n<li>Webserver<\/li>\n<\/ul>\n<p>\u00c7\u00f6z\u00fcm<\/p>\n<p>Veritaban\u0131 (Database) haricinde bulunan h\u0131zland\u0131rma ve optimize \u00e7al\u0131\u015fmalar\u0131n\u0131 yapman\u0131za ra\u011fmen wordpress siteniz yava\u015f a\u00e7\u0131l\u0131yor ise, veritaban\u0131 k\u0131sm\u0131nda yapmam\u0131z gereken i\u015flem a\u015fa\u011f\u0131daki gibidir.<\/p>\n<p>\u00d6rnek sorgu analiz \u00e7\u0131kt\u0131m\u0131z a\u015fa\u011f\u0131daki gibidir.<\/p>\n<p>&nbsp;<\/p>\n<pre># Rank Query ID           Response time  Calls R\/Call  V\/M   Item\r\n# ==== ================== ============== ===== ======= ===== =============\r\n#    1 0xC1623E6807CB8BE5 207.3160 45.9%    15 13.8211  1.83 SELECT wp_posts wp_term_relationships wp_term_taxonomy\r\n#    2 0x5167A4457BE9231B 100.7565 22.3%    10 10.0756  0.83 SELECT wp_posts wp_postmeta\r\n#    3 0xB6BD43F5DAA5EF11  67.0009 14.8%    17  3.9412  1.33 SELECT wp_posts wp_term_relationships wp_postmeta\r\n#    4 0x2CCE270A1F4865ED  49.2758 10.9%    27  1.8250  0.15 SELECT wp_posts\r\n#    5 0x626B2BE09C53BCF4   8.4502  1.9%     1  8.4502  0.00 SELECT wp_posts wp_postmeta wp_term_relationships\r\n# MISC 0xMISC              19.0393  4.2%  1752  0.0109   0.0 \r\n<\/pre>\n<p>Partition i\u015flemi yapaca\u011f\u0131z yani b\u00f6l\u00fcmleme bu i\u015flem i\u00e7in baz alm\u0131\u015f oldu\u011fumuz sat\u0131r say\u0131lar\u0131 a\u015fa\u011f\u0131daki gibidir.<\/p>\n<ul>\n<li>wp_postmeta (3,049,294) sat\u0131r<\/li>\n<li>wp_term_relationships (571,138) sat\u0131r<\/li>\n<li>wp_posts (230,532) sat\u0131r<\/li>\n<\/ul>\n<p>makalemizde wp_term_relationships tablosunu b\u00f6lerek performans\u0131n\u0131 g\u00f6zlemleyece\u011fiz.<\/p>\n<p>Stratejimiz<br \/>\n<span lang=\"tr\"><br \/>\nMySQL burada sa\u011flanan detaylar ile birka\u00e7 b\u00f6l\u00fcmleme se\u00e7ene\u011fi sunuyor. Tablo yap\u0131lar\u0131n\u0131 ve b\u00f6l\u00fcmleme se\u00e7eneklerini g\u00f6zden ge\u00e7irdikten sonra, Aral\u0131klara g\u00f6re b\u00f6l\u00fcmlemeye karar verdik ve aral\u0131\u011f\u0131n ayarlanmas\u0131 i\u00e7in tablonun PRIMARY anahtar\u0131n\u0131 kulland\u0131k.<\/p>\n<p><\/span><\/p>\n<pre>mysql<span class=\"crayon-h\">&gt;<\/span><span class=\"crayon-st\">describe<\/span>wp_term_relationships;<\/pre>\n<div><\/div>\n<pre>+------------------+---------------------+------+-----+---------+-------+\r\n| Field            | Type                | Null | Key | Default | Extra |\r\n+------------------+---------------------+------+-----+---------+-------+\r\n| object_id        | bigint(20) unsigned | NO   | PRI | 0       |       |\r\n| term_taxonomy_id | bigint(20) unsigned | NO   | PRI | 0       |       |\r\n| term_order       | int(11)             | NO   |     | 0       |       |\r\n+------------------+---------------------+------+-----+---------+-------+\r\n3 rows in set (0.00 sec)\r\n<\/pre>\n<div class=\"crayon-line\">\nPartiton sorgumuz a\u015fa\u011f\u0131daki gibi olacakt\u0131r.<\/p>\n<div class=\"crayon-line\">\n<pre>ALTERTABLE wp_term_relationships PARTITION BYRANGE(object_id)\r\n(\r\nPARTITION sc0 VALUESLESS THAN(50000),\r\nPARTITION sc1 VALUESLESS THAN(100000),\r\nPARTITION sc2 VALUESLESS THAN(150000),\r\nPARTITION sc3 VALUESLESS THAN(200000),\r\nPARTITION sc4 VALUESLESS THAN(250000),\r\nPARTITION sc5 VALUESLESS THAN(300000),\r\nPARTITION sc6 VALUESLESS THAN(350000)\r\n);\r\n\r\n<\/pre>\n<p><br class=\"crayon-st\" \/><br \/>\nSonu\u00e7;<\/p>\n<p><span lang=\"tr\">Kar\u015f\u0131la\u015ft\u0131rma \u00fczerine, ortalama sorgu s\u00fcrelerinin % 50 oran\u0131nda d\u00fc\u015ft\u00fc\u011f\u00fcn\u00fc g\u00f6rd\u00fck.<\/p>\n<p>Bol trafikler dileriz.<\/span><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Merhabalar, Bug\u00fcn makalemizde WordPress i\u00e7erik y\u00f6netim sistemi kullanan kullan\u0131c\u0131lara y\u00f6nelik olarak WordPress H\u0131zland\u0131rma i\u015flemlerini anlataca\u011f\u0131z. \u00d6ncelikle makale seviyesi minimum Orta d\u00fczey teknik bilgisi bulunan kullan\u0131c\u0131lar i\u00e7in olup teknik bilgisi bulunmayan ki\u015filerin hosting \/\u00a0sunucu\u00a0firmalar\u0131ndan destek istemeleri gerekmektedir. WordPress&#8216;in MySQL veritaban\u0131 \u00fczerinde ko\u015ftu\u011funu hepimiz biliyoruzdur. Makalemizde yapaca\u011f\u0131m\u0131z i\u015flemler MySQL veritaban\u0131 \u00fczerinde yapaca\u011f\u0131m\u0131z i\u015flemlerdir. Problem Nedir? Hepimizin bildi\u011fi &hellip;<\/p>\n","protected":false},"author":1,"featured_media":1442,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[12],"tags":[],"class_list":["post-988","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo"],"acf":[],"_links":{"self":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/988","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/comments?post=988"}],"version-history":[{"count":0,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/988\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media\/1442"}],"wp:attachment":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media?parent=988"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/categories?post=988"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/tags?post=988"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}