คำถามติดแท็ก caching

การปรับปรุงเวลาตอบสนองโดยการลดปริมาณการประมวลผลโดยปกติแล้ว Drupal จำเป็นต้องใช้แคช

9
ประสบการณ์การใช้งานจริงในการปรับขนาดและการปรับแต่งประสิทธิภาพ
เว็บไซต์ของฉันทำงานถูกกล่าวหาว่าจะมีอัตราการตีขนาดใหญ่ในเร็ว ๆ นี้หลังจากการเปิดตัว ลูกค้ากำลังพูดถึงความเป็นไปได้ของการเข้าชมประมาณ 2,500 ครั้งต่อวินาทีในหนึ่งวัน ละเว้นความจริงที่ว่าอัตราการเข้าชมนี้อาจเป็นไปได้ว่าลูกค้าในแง่ดีและนอกเหนือจากการได้เซิร์ฟเวอร์ที่ใหญ่ที่สุดเท่าที่จะเป็นไปได้สิ่งที่ดีที่สุดที่ Drupal ควรได้รับการกำหนดค่าเพื่อรองรับอัตราการเข้าชมจำนวนมาก ฉันได้อ่านปรับโครงสร้างพื้นฐาน drupal.org , บล็อกประสิทธิภาพ Drupal , Best Practices การขูดหินปูน Drupalและหน้าอื่น ๆ อีกมากมาย แต่สิ่งที่ฉันกำลังมองหาเป็นประสบการณ์จริงของการทำเช่นนี้สิ่งที่ทำงานอะไรไม่ได้และสิ่งที่ คาดหวัง

2
ความแตกต่างระหว่างอายุการใช้งานแคชขั้นต่ำและการหมดอายุของหน้าแคช
บนหน้าประสิทธิภาพ Drupal ภายใต้แคช fieldset คุณมีสองตัวเลือก หนึ่งคืออายุการใช้งานแคชขั้นต่ำและอีกอันคือหน้าแคชที่หมดอายุ ความแตกต่างระหว่างสองสิ่งนี้คืออะไร
35 7  caching 

4
กลยุทธ์การล้างแคชหน่วยความจำสำหรับไซต์ขนาดใหญ่?
หนึ่งในเว็บไซต์ Drupal 7 ของฉันมีฟิลด์เป็นพันประเภทเนื้อหาหลากหลายมีการดูมากกว่า 25 ครั้งและประเภทโปรไฟล์นับร้อย (ในไม่ช้าจะนับเป็นพัน) ด้วยเหตุนี้ฉันใช้ core patch ที่ดีกว่าแคชข้อมูลฟิลด์เอนทิตี (http://drupal.org/node/1040790) และ -dev เวอร์ชันของ Views ที่ดีกว่าแคชวิวโดยแสดง (แทนที่จะมีขนาดใหญ่หนึ่งอัน ดูแถวแคชด้วยข้อมูลมุมมองทั้งหมดในนั้น) สิ่งนี้ช่วยให้หน้าเว็บส่วนใหญ่ในไซต์โหลดด้วย RAM ขนาด 20-30MB มากกว่า 160MB + (แทนที่จะดึง cache_ * แถวของตารางสำหรับเขตข้อมูลและมุมมองที่มีขนาด 10MB + โปรแกรมปรับปรุงช่วยรักษาข้อมูลแคช _ * ให้มีประสิทธิภาพมากขึ้น) สิ่งนี้นำเสนอปัญหาอย่างไรก็ตามการสร้างแคชใหม่นั้นใช้เวลานานมาก มักจะมากกว่าหนึ่งหรือสองนาที และในช่วงเวลานี้ Drupal จะไม่โหลดหน้าใด ๆ (เนื่องจากแคชที่พยายามอ่านไม่ได้สร้างขึ้นคำขออื่น ๆ จึงต้องรอ) ในระหว่างรอบการจราจรต่ำนี่ไม่ใช่เรื่องใหญ่ ผู้ใช้หนึ่งร้อยหรือมากกว่านั้นจะต้องรอหนึ่งนาทีก่อนที่จะโหลดหน้าเว็บ แต่ในระหว่างรอบการรับส่งข้อมูลสูงเซิร์ฟเวอร์ Apache เริ่มคลั่งไคล้โหลดซีพียู …
30 7  drush  caching  performance 

4
จะปิดการแคชได้อย่างไร
ฉันกำลังพัฒนาเว็บไซต์ใน Drupal 7 และการแคชช้าลงอย่างมาก ตัวอย่างเช่นฉันมีฟังก์ชันชุดรูปแบบสำหรับฟอร์ม ฉันงงงวยทำไมมันไม่ทำงาน จนกว่าฉันจะล้างแคชและได้รับการแก้ไข วิธีการปิดอย่างสมบูรณ์?
26 7  caching 

3
มันซ้ำซ้อนหรือไม่ที่จะใช้โมดูล“ เพิ่ม” หากใช้สารเคลือบเงา?
เราเรียกใช้อินสแตนซ์ Drupal ของเราหลังเซิร์ฟเวอร์ Varnish แต่เรากำลังมองหาวิธีอื่น ๆ / เพิ่มเติมเพื่อเร่งความเร็วเว็บไซต์ Boostเป็นโมดูลที่ตั้งชื่อบ่อยครั้งเพื่อจุดประสงค์นี้ ดูเหมือนว่าจะสร้างหน้าแบบคงที่และให้บริการเพื่อหลีกเลี่ยงเวลาการสร้างใหม่ แต่ - หากเราแคชด้วยสารเคลือบเงาอยู่แล้ว - สิ่งนี้จะให้ประโยชน์แก่เราหรือไม่?

4
มุมมองถูกแคชผ่านกลไกการแคชหลักหรือฉันควรตั้งค่าการแคชโดยตรงในแต่ละมุมมองหรือไม่?
ฉันเห็นว่ามีการตั้งค่าแคชในแต่ละมุมมองของฉัน ฉันต้องตั้งค่าเหล่านี้หรือไม่หรือกลไกการแคชหลักใน / admin / config / development / performance ทำสิ่งนี้โดยอัตโนมัติและ "การตั้งค่าพิเศษ" เหล่านี้ในมุมมองคือถ้าฉันต้องการแทนที่พฤติกรรมแคชเริ่มต้นของแกน drupal?
23 7  views  blocks  caching 

4
วิธีที่ดีที่สุดในการปรับให้เหมาะสมสำหรับประสิทธิภาพของผู้ใช้ที่ผ่านการตรวจสอบแล้ว?
คำหลักที่นี่รับรองความถูกต้อง ! ในปัจจุบัน (เท่าที่ฉันรู้) วิธีการเพิ่มประสิทธิภาพสำหรับการเข้าถึงแบบไม่ระบุชื่อนั้นทำได้โดยการแคชหน้าแบบสแตติก (วานิช / ปลาหมึก / บูสต์) อย่างไรก็ตามเท่าที่ฉันรู้ว่าสิ่งนี้ดูเหมือนจะไม่ดีมากในสถานการณ์ที่ผู้ใช้ส่วนใหญ่ของคุณได้รับการรับรองความถูกต้อง นอกเหนือจาก APC อย่างชัดเจน Memcache และการขว้างเงินที่ฮาร์ดแวร์วิธีที่ดีที่สุดในการปรับแต่งไซต์ที่มีการใช้งานสูงนั้นเป็นสิ่งที่ดีที่สุดสำหรับผู้ใช้ที่ได้รับการรับรองความถูกต้อง ตัวอย่างเช่น: drupal.org, เครือข่ายสังคมออนไลน์, ชุมชน, ฯลฯ ฉันสนใจ Drupal 6 มากขึ้นในขณะนี้ดังนั้นฉันเดาว่า MongoDB ไม่สามารถสมัครได้ตอนนี้ ...
22 6  caching  performance 


2
drupal_static () ใช้ตัวแปร FUNCTION มันหมายความว่าอะไร?
function drupal_set_page_content($content = NULL) { $content_block = &drupal_static(__FUNCTION__, NULL); $main_content_display = &drupal_static('system_main_content_added', FALSE); if (!empty($content)) { $content_block = (is_array($content) ? $content : array('main' => array('#markup' => $content))); } else { $main_content_display = TRUE; return $content_block; } } ตัวอย่างนี้วางจาก common.inc เราส่งผ่าน__FUNCTION__ไปยัง drupal_static()แต่ฉันไม่ทราบว่าตัวแปรนี้หมายถึงอะไร มันหมายถึงแคชสำหรับฟังก์ชั่นด้านนอกหรือไม่? มันทำงานยังไง? ฉันไม่เห็นข้อมูลใด ๆ $content_blockที่จัดการภายในฟังก์ชันก่อนที่จะส่งกลับ
21 caching 

7
ฉันจะล้างแคชโดยใช้แบบสอบถาม SQL ได้อย่างไร
หลังจากอัปเดตโมดูลเว็บไซต์ของฉันไม่สามารถใช้งานได้และแสดงข้อความข้อผิดพลาด php เท่านั้น ฉันพยายามหลีกเลี่ยงปัญหาด้วยdrush ccแต่ก็ไม่ได้ช่วย ลองด้วยสคริปต์ php ที่กำหนดเอง แต่มีปัญหาในการค้นหาของฉัน DRUPAL_ROOT ฉันต้องการล้างแคชตารางจาก Drupal 7 โดยตรงบนเซิร์ฟเวอร์ mysql แต่ฉันไม่แน่ใจว่าควรล้างตารางใดและโดยเฉพาะอย่างยิ่งที่ฉันไม่ควรล้าง ฉันต้องล้าง[SITE-PREFIX_]cache*ตารางทั้งหมดหรือไม่
21 7  8  caching 

7
ฉันจะตั้งค่าการแคชอย่างถูกต้องสำหรับบล็อกที่กำหนดเองของฉันที่แสดงเนื้อหาขึ้นอยู่กับโหนดปัจจุบันได้อย่างไร
ฉันมีบล็อกพื้นฐานมากซึ่งเพิ่งแสดง ID ของโหนดปัจจุบัน <?php /** * @file * Contains \Drupal\mymodule\Plugin\Block\ExampleEmptyBlock. */ namespace Drupal\mymodule\Plugin\Block; use Drupal\Core\Block\BlockBase; use Drupal\Core\Cache\Cache; /** * @Block( * id = "example_empty", * admin_label = @Translation("Example: empty block") * ) */ class ExampleEmptyBlock extends BlockBase { /** * {@inheritdoc} */ public function build() { $node = \Drupal::routeMatch()->getParameter('node'); $build …
19 8  blocks  caching 

2
แนวทางปฏิบัติที่ดีที่สุดสำหรับการใช้แคชแบบกำหนดเองหรือไม่
สำหรับทุกตัวอย่างของเอนทิตีทุกประเภทฉันสร้างแคชจำนวนหนึ่งตั้งชื่อดังนี้: [module_name]__[entity_type]__[entity_id]__[string_depending_on_where_the_cache_came_from] ตอนนี้เมื่อใดก็ตามที่มีการอัปเดตเอนทิตีฉันต้องการปล่อยแคชทั้งหมดที่เริ่มต้นด้วยประเภทและรหัสเอนทิตีที่เกี่ยวข้อง ฉันจะเก็บ / ล้างแคชเหล่านี้ได้อย่างไร ขณะนี้ฉันเพิ่งcache_set ()แต่นั่นนำเสนอปัญหาเมื่อฉันต้องการล้างเนื่องจากฉันไม่ทราบชื่อของแคชที่เกี่ยวข้องทั้งหมด การปล่อยรายการแคชด้วย db_delete () ปลอดภัยไหม
17 7  caching 

2
สิ่งที่ทุกคนมีส่วนร่วมในเวลาดำเนินการหน้า drupal?
ฉันมีเว็บไซต์ที่ฉันกำลังตรวจสอบว่ามีปัญหาด้านประสิทธิภาพการทำงานที่สำคัญโดยใช้ memcache ฉันสามารถนำจำนวนการสืบค้นลงทั้งในจำนวนและเวลาการยกเว้นทั้งหมด (จาก 3 วินาทีถึง 230 มิลลิวินาที) แต่เวลาในการดำเนินการหน้าจะทำให้ฉันหมดไป ดูค่าที่ outputted โดย devel) ความเข้าใจของฉันคือเวลาในการประมวลผลหน้า = เวลาที่ใช้ในการรัน php ดังนั้นฉันจึงติดตั้ง APC และฉันสามารถเห็น php opcode แคชและสถิติแสดงการเข้าชมในแผงควบคุม APC (apc.php จัดส่งด้วย APC) เวลาในการเรียกใช้หน้าเว็บของฉันไม่ลดลง ดังนั้นฉันคิดว่าคำถามของฉันเป็นสองเท่า: สิ่งที่ทุกคนมีส่วนร่วมในเวลาดำเนินการหน้า มันใช้เวลาในการรัน php หรือยัง? ฉันควรใช้วิธีการใดเพื่อลดเวลาในการเรียกใช้เพจ ฉันลองใช้ APC แต่ไม่ได้ช่วยอะไรมาก จำนวน PS ของโมดูลที่ใช้ในไซต์นี้มีขนาดใหญ่มาก (168) แต่ตอนนี้ฉันไม่ได้อยู่ในตำแหน่งที่จะให้คำแนะนำได้มันเหมือนไฟในสถานการณ์หลุม แก้ไข:ผลลัพธ์ของการรัน xhprof ในอินสแตนซ์ในท้องถิ่น (แนะนำโดย mikeytown) ดูเหมือนว่าจะบ้าฉันคิดว่าผลลัพธ์ในภายหลังนั้นเกิดจากการฟาดฟัน? diff รันสำหรับ …

3
การตั้งค่า APC ที่ดีที่สุดเพื่อลดเวลาในการเรียกใช้เพจ
ฉันมี Drupal 7, apc พร้อม php-fpm และ apache ที่อยู่ด้านหลังวานิชและ RAM 512 เมกะไบต์ ฉันวัดเวลาดำเนินการเพจด้วยโมดูล devel เวลาแบบสอบถามฐานข้อมูลต่ำ (62ms) เมื่อเทียบกับเวลาดำเนินการหน้าซึ่งเป็น 854 ms นั่นหมายความว่ามีปัญหากับการตั้งค่า PHP และ APC การตั้งค่าปัจจุบันของฉันเป็นเพียง apc.shm_size = 64 apc.stat=1 ฉันจะปรับปรุงได้อย่างไร การตั้งค่าที่ดีที่สุดสำหรับ Drupal คืออะไรจากการกำหนดค่าข้างต้น ขอบคุณ
16 7  performance  caching 

9
มีวิธีการขอล้างแคชหรือไม่
สำหรับเว็บไซต์ของสถาบันขนาดใหญ่ที่มีแคชจำนวนมากฉันต้องการสร้างแคชโดยเร็วที่สุดเพื่อไม่ให้ผู้ใช้มาถึงรุ่นแคช ... ฉันมีชุด cron ทุกนาทีที่ทำได้โดยการใช้งานฟังก์ชั่นบางอย่างและขอหน้าสำคัญ แต่สิ่งที่ฉันกำลังมองหาคือวิธีที่จะรู้ว่าเมื่อแคชเพิ่งจะถูกล้างโดยเฉพาะอย่างยิ่งตะขอดังนั้นฉันสามารถเปิดสิ่งนี้ สร้างฟังก์ชั่น ความคิดใด ๆ
16 7  hooks  caching 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.