Eğer ki bir view yerine bir veritabanı sorgusunu önbellekte tutmak istiyorsanız low-level caching tam size göre. Örnek senaryomuzda bir e-ticaret sitesinin anasayfası ile uğraştığımızı düşünürsek. Anasayfada muhtemelen çok fazla sorgu olması gerekmekte. Hepsiburada.com’dan örnek verecek olursak, anasayfada şöyle içerikler mevcut:
- Öne Çıkan Ürünler
- İndirimli Ürünler
- Çok Satanlar
- Kargo Bedavalar
- Bugün Teslimat
- Günün Fırsatları
- Slayt Verileri
Bonus olarak:
- Header Kategorileri
- Footer Kategorileri, özel sayfalar vs.
Bunların tamamının ayrı sorgularla gerçekleştiğini düşünelim. Buna göre bir kullanıcı sayfayı açtığı anda toplam 9 farklı veritabanı sorgusu çalışacak. Şimdi gelelim cache mevzusuna.
Low-level caching bize şöyle bir güzellik sağlıyor: herhangi bir kişi sayfayı açtığında veritabanı sorgusu yapılıp önbelleğe alınıyor ve daha sonra sayfayı yenilediğinde veya başka bir kişi sayfayı ziyaret ettiğinde veritabanı sorgusu yerine onun sonuçları önbellekten getiriliyor. Ne zamana kadar? Bizim başta belirlediğimiz cache tutulma süresine kadar veya biz temizleyene kadar.
1 |
Rails.cache.fetch("cache_tanimlayici_isim"){ veritabani_sorgusu } |
Burada yapılan işlem eğer cache_taimlayici_isim isminde önbellekte bir veri varsa onu return et, yoksa veritabanı sorgusunu cache_tanimlayici_isim olarak önbelleğe al ve sonucu return et. O halde anasayfa şöyle bir şey olacak:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
class HomeController < ApplicationController def main @Slides = slide_data @FeaturedProducts = featured_products @TopSellers = top_seller_products end private def slide_data Rails.cache.fetch("home_slide_data"){ Slide.all } end def featured_products Rails.cache.fetch("home_featured_products"){ FeaturedProduct.all } end def top_seller_products Rails.cache.fetch("home_top_sellers"){ TopSeller.all } end end |
Örnek olması açısından 3 tanesini oluşturdum. Genel olarak bu şekilde sorguları önbelleğe alabiliriz. Peki ya herhangi birinde değişiklik olduğunda ne olacak?
1 |
Rails.cache.delete 'cache_tanimlayici_isim' |
Bu şekilde de önbellek temizlemesi yapabiliyoruz. Slide modelini örnek verecek olursak; Slide modelinde herhangi bir değişiklik olduğunda home_slide_data cacheini temizlemek istiyorsam eğer
1 2 3 4 5 6 7 |
class Slide < ApplicationRecord after_save :clear_caches protected def clear_caches Rails.cache.delete('home_slide_data') end end |
Çok kullanışlı bir yöntem olduğunu söylemem gerek. Size şuan üzerinde çalıştığım bir projeden örnek göstereyim. Normalde anasayfa açıldığındaki log çıktısı aşağıdaki şekilde
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
Processing by Mobile::HomeController#main as HTML Parameters: {"subdomain"=>"m"} Headline Load (0.4ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 1 AND `headlines`.`pin` = 0 ORDER BY `headlines`.`order_date` DESC LIMIT 20 Gallery Load (0.3ms) SELECT `galleries`.* FROM `galleries` WHERE `galleries`.`id` IN (20, 6) Article Load (0.3ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` IN (14735, 14734, 14733, 14732, 14731, 14730, 14729, 14728, 14725, 14722, 14663, 14693, 14692, 14511, 14528, 14527, 14526, 14519) (0.2ms) SELECT COUNT(*) FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 1 AND `headlines`.`pin` = 1 Headline Load (0.4ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 1 AND `headlines`.`pin` = 1 ORDER BY `headlines`.`order` ASC Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` = 14723 HeadlineCategory Load (0.2ms) SELECT `headline_categories`.* FROM `headline_categories` WHERE `headline_categories`.`order` IN (2, 3, 4, 5) ORDER BY `headline_categories`.`order` ASC SQL (0.4ms) SELECT `article_categories`.`id` AS t0_r0, `article_categories`.`category_id` AS t0_r1, `article_categories`.`article_id` AS t0_r2, `article_categories`.`main` AS t0_r3, `article_categories`.`created_at` AS t0_r4, `article_categories`.`updated_at` AS t0_r5, `articles`.`id` AS t1_r0, `articles`.`old_id` AS t1_r1, `articles`.`title` AS t1_r2, `articles`.`vip_title` AS t1_r3, `articles`.`spot` AS t1_r4, `articles`.`vip_spot` AS t1_r5, `articles`.`detail` AS t1_r6, `articles`.`vip_detail` AS t1_r7, `articles`.`link` AS t1_r8, `articles`.`show_hits` AS t1_r9, `articles`.`update_date` AS t1_r10, `articles`.`keywords` AS t1_r11, `articles`.`description` AS t1_r12, `articles`.`vip_active` AS t1_r13, `articles`.`main_active` AS t1_r14, `articles`.`commentable` AS t1_r15, `articles`.`detail_image` AS t1_r16, `articles`.`vip_detail_image` AS t1_r17, `articles`.`created_at` AS t1_r18, `articles`.`updated_at` AS t1_r19, `articles`.`user_id` AS t1_r20, `articles`.`notify_sended` AS t1_r21, `articles`.`shared` AS t1_r22, `articles`.`breaking_news` AS t1_r23, `articles`.`meta_title` AS t1_r24, `articles`.`reporter_id` AS t1_r25, `articles`.`source_id` AS t1_r26, `articles`.`small_image` AS t1_r27, `articles`.`iha_id` AS t1_r28 FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` WHERE `article_categories`.`category_id` = 550 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 23 SQL (0.4ms) SELECT `article_categories`.`id` AS t0_r0, `article_categories`.`category_id` AS t0_r1, `article_categories`.`article_id` AS t0_r2, `article_categories`.`main` AS t0_r3, `article_categories`.`created_at` AS t0_r4, `article_categories`.`updated_at` AS t0_r5, `articles`.`id` AS t1_r0, `articles`.`old_id` AS t1_r1, `articles`.`title` AS t1_r2, `articles`.`vip_title` AS t1_r3, `articles`.`spot` AS t1_r4, `articles`.`vip_spot` AS t1_r5, `articles`.`detail` AS t1_r6, `articles`.`vip_detail` AS t1_r7, `articles`.`link` AS t1_r8, `articles`.`show_hits` AS t1_r9, `articles`.`update_date` AS t1_r10, `articles`.`keywords` AS t1_r11, `articles`.`description` AS t1_r12, `articles`.`vip_active` AS t1_r13, `articles`.`main_active` AS t1_r14, `articles`.`commentable` AS t1_r15, `articles`.`detail_image` AS t1_r16, `articles`.`vip_detail_image` AS t1_r17, `articles`.`created_at` AS t1_r18, `articles`.`updated_at` AS t1_r19, `articles`.`user_id` AS t1_r20, `articles`.`notify_sended` AS t1_r21, `articles`.`shared` AS t1_r22, `articles`.`breaking_news` AS t1_r23, `articles`.`meta_title` AS t1_r24, `articles`.`reporter_id` AS t1_r25, `articles`.`source_id` AS t1_r26, `articles`.`small_image` AS t1_r27, `articles`.`iha_id` AS t1_r28 FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` WHERE `article_categories`.`category_id` = 516 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 23 Rendering mobile/home/main.slim within layouts/mobile Rendered partials/_meta.slim (1.7ms) DynamicModule Load (0.3ms) SELECT `dynamic_modules`.* FROM `dynamic_modules` WHERE `dynamic_modules`.`location` = 'mobile_main' AND `dynamic_modules`.`state` = 1 ORDER BY `dynamic_modules`.`order` ASC TopHeadline Load (0.2ms) SELECT `top_headlines`.* FROM `top_headlines` WHERE `top_headlines`.`is_active` = 1 ORDER BY `top_headlines`.`id` DESC LIMIT 29 Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` IN (14735, 14675, 14676, 14529, 14530, 14543, 14504, 13800) Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14735 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Rendered mobile/home/_top_headline.slim (8.8ms) FlashHeadline Load (0.6ms) SELECT `flash_headlines`.* FROM `flash_headlines` WHERE `flash_headlines`.`is_active` = 1 ORDER BY `flash_headlines`.`id` DESC LIMIT 7 Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` IN (14735, 14531, 14543, 13800) CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14735 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14735], ["headable_type", "Article"], ["LIMIT", 1]] Rendered mobile/home/_flash_headline.slim (7.3ms) Rendered mobile/home/_fixed_celebration.slim (2.2ms) Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 3313 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Rendered mobile/home/_box.slim (5.8ms) Article Load (0.3ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` = 14692 LIMIT 1 CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14735 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14735], ["headable_type", "Article"], ["LIMIT", 1]] Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14734 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14733 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14732 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14731 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14730 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14729 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14728 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14725 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14693 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.2ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14692 AND `headlines`.`headable_type` = 'Article' LIMIT 1 Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 2 ORDER BY `headlines`.`order_date` DESC LIMIT 20 Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` = 14529 Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 4 ORDER BY `headlines`.`order_date` DESC LIMIT 20 Article Load (0.3ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` IN (14750, 14749, 14748, 14747, 14746, 14745, 14744, 14743, 14742, 14741, 14740, 14739, 14738, 14737, 14724, 14721, 14720, 14719, 14718, 14717) Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 3 ORDER BY `headlines`.`order_date` DESC LIMIT 20 Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` = 14532 Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`is_active` = 1 AND `headlines`.`headline_category_id` = 5 ORDER BY `headlines`.`order_date` DESC LIMIT 20 Gallery Load (0.2ms) SELECT `galleries`.* FROM `galleries` WHERE `galleries`.`id` = 11 Article Load (0.2ms) SELECT `articles`.* FROM `articles` WHERE `articles`.`id` = 14544 LIMIT 1 Rendered mobile/home/_main_headline.slim (41.8ms) Post Load (1.4ms) SELECT DISTINCT `posts`.* FROM `posts` ORDER BY `posts`.`id` DESC Writer Load (0.2ms) SELECT `writers`.* FROM `writers` WHERE `writers`.`id` IN (4, 5) User Load (0.2ms) SELECT `users`.* FROM `users` WHERE `users`.`id` IN (10, 12) UserProfile Load (0.2ms) SELECT `user_profiles`.* FROM `user_profiles` WHERE `user_profiles`.`user_id` = 10 LIMIT 1 UserProfile Load (0.3ms) SELECT `user_profiles`.* FROM `user_profiles` WHERE `user_profiles`.`user_id` = 12 LIMIT 1 Rendered mobile/home/_writers.slim (87.4ms) Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14736 AND `headlines`.`headable_type` = 'Article' LIMIT 1 CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14735 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14735], ["headable_type", "Article"], ["LIMIT", 1]] CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14733 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14733], ["headable_type", "Article"], ["LIMIT", 1]] CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14732 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14732], ["headable_type", "Article"], ["LIMIT", 1]] CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14731 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14731], ["headable_type", "Article"], ["LIMIT", 1]] CACHE Headline Load (0.0ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14730 AND `headlines`.`headable_type` = 'Article' LIMIT 1 [["headable_id", 14730], ["headable_type", "Article"], ["LIMIT", 1]] Headline Load (0.3ms) SELECT `headlines`.* FROM `headlines` WHERE `headlines`.`headable_id` = 14727 AND `headlines`.`headable_type` = 'Article' LIMIT 1 (1.9ms) SELECT COUNT(DISTINCT count_column) FROM (SELECT DISTINCT `article_categories`.`id` AS count_column FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` LEFT OUTER JOIN `categories` ON `categories`.`id` = `article_categories`.`category_id` WHERE `article_categories`.`category_id` = 517 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 5) subquery_for_count SQL (0.4ms) SELECT `article_categories`.`id` AS t0_r0, `article_categories`.`category_id` AS t0_r1, `article_categories`.`article_id` AS t0_r2, `article_categories`.`main` AS t0_r3, `article_categories`.`created_at` AS t0_r4, `article_categories`.`updated_at` AS t0_r5, `articles`.`id` AS t1_r0, `articles`.`old_id` AS t1_r1, `articles`.`title` AS t1_r2, `articles`.`vip_title` AS t1_r3, `articles`.`spot` AS t1_r4, `articles`.`vip_spot` AS t1_r5, `articles`.`detail` AS t1_r6, `articles`.`vip_detail` AS t1_r7, `articles`.`link` AS t1_r8, `articles`.`show_hits` AS t1_r9, `articles`.`update_date` AS t1_r10, `articles`.`keywords` AS t1_r11, `articles`.`description` AS t1_r12, `articles`.`vip_active` AS t1_r13, `articles`.`main_active` AS t1_r14, `articles`.`commentable` AS t1_r15, `articles`.`detail_image` AS t1_r16, `articles`.`vip_detail_image` AS t1_r17, `articles`.`created_at` AS t1_r18, `articles`.`updated_at` AS t1_r19, `articles`.`user_id` AS t1_r20, `articles`.`notify_sended` AS t1_r21, `articles`.`shared` AS t1_r22, `articles`.`breaking_news` AS t1_r23, `articles`.`meta_title` AS t1_r24, `articles`.`reporter_id` AS t1_r25, `articles`.`source_id` AS t1_r26, `articles`.`small_image` AS t1_r27, `articles`.`iha_id` AS t1_r28, `categories`.`id` AS t2_r0, `categories`.`title` AS t2_r1, `categories`.`is_active` AS t2_r2, `categories`.`description` AS t2_r3, `categories`.`keywords` AS t2_r4, `categories`.`color` AS t2_r5, `categories`.`order` AS t2_r6, `categories`.`is_main` AS t2_r7, `categories`.`show` AS t2_r8, `categories`.`created_at` AS t2_r9, `categories`.`updated_at` AS t2_r10, `categories`.`parent_id` AS t2_r11, `categories`.`name` AS t2_r12, `categories`.`link` AS t2_r13, `categories`.`old_id` AS t2_r14, `categories`.`favourite` AS t2_r15, `categories`.`headline_title` AS t2_r16 FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` LEFT OUTER JOIN `categories` ON `categories`.`id` = `article_categories`.`category_id` WHERE `article_categories`.`category_id` = 517 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 1 (0.3ms) SELECT COUNT(DISTINCT count_column) FROM (SELECT DISTINCT `article_categories`.`id` AS count_column FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` LEFT OUTER JOIN `categories` ON `categories`.`id` = `article_categories`.`category_id` WHERE `article_categories`.`category_id` = 539 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 5) subquery_for_count (0.6ms) SELECT COUNT(DISTINCT count_column) FROM (SELECT DISTINCT `article_categories`.`id` AS count_column FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` LEFT OUTER JOIN `categories` ON `categories`.`id` = `article_categories`.`category_id` WHERE `article_categories`.`category_id` = 534 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 5) subquery_for_count SQL (0.4ms) SELECT `article_categories`.`id` AS t0_r0, `article_categories`.`category_id` AS t0_r1, `article_categories`.`article_id` AS t0_r2, `article_categories`.`main` AS t0_r3, `article_categories`.`created_at` AS t0_r4, `article_categories`.`updated_at` AS t0_r5, `articles`.`id` AS t1_r0, `articles`.`old_id` AS t1_r1, `articles`.`title` AS t1_r2, `articles`.`vip_title` AS t1_r3, `articles`.`spot` AS t1_r4, `articles`.`vip_spot` AS t1_r5, `articles`.`detail` AS t1_r6, `articles`.`vip_detail` AS t1_r7, `articles`.`link` AS t1_r8, `articles`.`show_hits` AS t1_r9, `articles`.`update_date` AS t1_r10, `articles`.`keywords` AS t1_r11, `articles`.`description` AS t1_r12, `articles`.`vip_active` AS t1_r13, `articles`.`main_active` AS t1_r14, `articles`.`commentable` AS t1_r15, `articles`.`detail_image` AS t1_r16, `articles`.`vip_detail_image` AS t1_r17, `articles`.`created_at` AS t1_r18, `articles`.`updated_at` AS t1_r19, `articles`.`user_id` AS t1_r20, `articles`.`notify_sended` AS t1_r21, `articles`.`shared` AS t1_r22, `articles`.`breaking_news` AS t1_r23, `articles`.`meta_title` AS t1_r24, `articles`.`reporter_id` AS t1_r25, `articles`.`source_id` AS t1_r26, `articles`.`small_image` AS t1_r27, `articles`.`iha_id` AS t1_r28, `categories`.`id` AS t2_r0, `categories`.`title` AS t2_r1, `categories`.`is_active` AS t2_r2, `categories`.`description` AS t2_r3, `categories`.`keywords` AS t2_r4, `categories`.`color` AS t2_r5, `categories`.`order` AS t2_r6, `categories`.`is_main` AS t2_r7, `categories`.`show` AS t2_r8, `categories`.`created_at` AS t2_r9, `categories`.`updated_at` AS t2_r10, `categories`.`parent_id` AS t2_r11, `categories`.`name` AS t2_r12, `categories`.`link` AS t2_r13, `categories`.`old_id` AS t2_r14, `categories`.`favourite` AS t2_r15, `categories`.`headline_title` AS t2_r16 FROM `article_categories` LEFT OUTER JOIN `articles` ON `articles`.`id` = `article_categories`.`article_id` LEFT OUTER JOIN `categories` ON `categories`.`id` = `article_categories`.`category_id` WHERE `article_categories`.`category_id` = 534 AND `articles`.`main_active` = 1 ORDER BY `article_categories`.`id` DESC LIMIT 1 Rendered mobile/home/_first_sub_headline.slim (33.8ms) Rendered mobile/home/_second_sub_headline.slim (26.0ms) Rendered mobile/home/_weather.slim (5.0ms) Rendered mobile/home/_ali_ihsan.slim (8.7ms) Rendered mobile/home/_comments.slim (4.9ms) Rendered mobile/home/main.slim within layouts/mobile (245.1ms) Completed 200 OK in 332ms (Views: 291.5ms | ActiveRecord: 23.7ms) |
Low-level cache sonrası ise şöyle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Started GET "/" for 127.0.0.1 at 2017-10-01 10:49:23 +0300 Processing by Mobile::HomeController#main as HTML Parameters: {"subdomain"=>"m"} Rendering mobile/home/main.slim within layouts/mobile Rendered partials/_meta.slim (1.8ms) Rendered mobile/home/_top_headline.slim (4.7ms) Rendered mobile/home/_flash_headline.slim (5.1ms) Rendered mobile/home/_fixed_celebration.slim (4.3ms) Rendered mobile/home/_box.slim (4.7ms) Rendered mobile/home/_main_headline.slim (12.8ms) Rendered mobile/home/_writers.slim (18.5ms) Rendered mobile/home/_first_sub_headline.slim (22.9ms) Rendered mobile/home/_second_sub_headline.slim (12.7ms) Rendered mobile/home/_weather.slim (3.0ms) Rendered mobile/home/_ali_ihsan.slim (17.2ms) Rendered mobile/home/_comments.slim (6.0ms) Rendered mobile/home/main.slim within layouts/mobile (121.8ms) Completed 200 OK in 171ms (Views: 167.3ms | ActiveRecord: 0ms) |
Bir cevap yazın