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

ใช้สำหรับคำถามเกี่ยวกับประสิทธิภาพของ Drupal วิธีการวัดและปรับปรุง

9
โมดูลที่ไม่เปิดใช้งานมีผลต่อประสิทธิภาพหรือไม่
มีโมดูล Drupal อยู่ แต่ไม่เปิดใช้งานมีผลกระทบต่อประสิทธิภาพของไซต์ Drupal หรือไม่ เพื่อนำไปใช้ในทางอื่น .. การลบโมดูลที่ถูกปิดการใช้งานจากไซต์ Drupal มีผลกระทบเชิงบวกต่อประสิทธิภาพหรือไม่
91 7  performance 

3
เนื่องจาก db_select นั้นช้ากว่า db_query มากทำไมฉันถึงต้องการใช้มัน
สำหรับพื้นหลังเกี่ยวกับเรื่องนี้โปรดดูhttp://drupal.org/node/1067802 จากทั้งหมดนั้นมีสถานการณ์ใดบ้างที่ฉันอาจต้องการใช้ db_select () หรือฉันควรจะพึ่งพา db_query เพียงลำพัง?

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

10
คุณปรับปรุงประสิทธิภาพของ Drupal ได้อย่างไร
Drupal พัฒนาอย่างรวดเร็ว แต่ประสิทธิภาพไม่ดีเท่าที่ควร มันยากที่จะเข้าถึง 50 คำขอต่อวินาที และมีการสืบค้น SQL จำนวนมากในหน้าเว็บอย่างง่าย หากคุณทดสอบเวลาที่ร้องขอของแบบฟอร์มที่ส่งใน Drupal.org จะใช้เวลาไม่กี่วินาทีในการทำให้เสร็จ คุณปรับปรุงความเร็วเว็บไซต์ของคุณอย่างไร?
54 7  6  performance 

5
Nginx vs Apache - มีการเปรียบเทียบการใช้งานจริงและ statistcs ออกมี?
ฉันมีเซิร์ฟเวอร์ใหม่ให้เล่นด้วยและฉันก็จ้องไปที่ผืนผ้าใบว่างเปล่า ฉันสามารถใส่อะไรก็ได้ที่ฉันต้องการ ในขณะที่ฉันสบายใจกับ Apache ฉันก็ยังคงได้ยินว่า nginx สามารถจัดการปริมาณการใช้งานได้มากกว่า Apache มากเพียงใดโดยปัจจัย 10, 100 และอื่น ๆ อีกมากมาย ไม่เพียงเท่านั้นมันคือ "เร็วกว่ามาก" เมื่อฉันค้นหาบทความฉันสามารถค้นหาสิ่งต่าง ๆ มากมายที่ไม่เกี่ยวข้องกับ Drupal หรือเมื่อฉันเจอบทความที่เกี่ยวข้องกับ Drupal ก็คือ 1) ไฟล์กำหนดค่าของใครบางคนที่พยายามอธิบายวิธีตั้งค่าอย่างรวดเร็วหรือ 2) มีคนพูดว่า "ไม่ไม่ใช้ nginx ไปกับ Apache กับ PHP fcgid "แต่ก็ไม่มีคำอธิบายว่าทำไม ดังนั้นเมื่อพูดถึง Drupal ความจริงคืออะไรที่นี่? ตัวอย่างเช่นฉันกำลังมองหาบางสิ่งบางอย่างตามสายบทความ2bits.comนี้ ที่นี่ผู้เขียนได้ดู Apache mod_php vs Apache อย่างกว้างขวางพร้อมกับ fcgid ชั่งน้ำหนักข้อดีข้อเสียของแต่ละกรณีและให้กรณีศึกษาเพื่อแสดงให้เห็นถึงผลกระทบในโลกแห่งความเป็นจริง มีข้อมูลเพียงพอในบทความนี้สำหรับฉันในการตัดสินใจที่มีการศึกษาว่าวิธีใดเหมาะสมที่สุดสำหรับสถานการณ์ของฉัน ในขณะที่ผู้เขียนเปรียบเทียบ mod_php …

16
ปัญหาประสิทธิภาพการทำงาน: ความล่าช้าในการร้องขอครั้งแรก
ฉันรวมไซต์ D7 เข้าด้วยกันด้วยหัวข้อย่อย Minelli ตามวิธีที่ฉันทดลองมากด้วยธีมที่แตกต่างกันโมดูลที่แตกต่างกัน อยู่ที่ไหนสักแห่งระหว่างที่ฉันพัฒนาปัญหาประสิทธิภาพแปลก ๆ และตอนนี้ฉันไม่รู้จริง ๆ ว่าชุดรูปแบบ / โมดูล / การกำหนดค่าเกิดจากอะไร ปัญหาคือเมื่อฉันเยี่ยมชมเว็บไซต์ครั้งแรกมันใช้เวลาประมาณ 15 วินาทีก่อนที่หน้าแรกจะแสดง ฉันสามารถย้ายไปรอบ ๆ เว็บไซต์และตอบสนองได้ดีมาก หากฉันทิ้งไว้ประมาณหนึ่งชั่วโมงจากนั้นกลับมาที่การร้องขอครั้งแรกช้ามากอีกครั้ง ฉันล้างแคชแล้วเพื่อไม่ให้เป็นปัญหา นอกจากนี้ฉันได้ปิดการใช้งานธีมและโมดูลที่ฉันไม่ได้ใช้ ฉันย้ายไซต์ไปยังโครงสร้างพื้นฐานใหม่ แต่ปัญหาเกิดขึ้นตามมา! ฉันจะไปที่ไหนต่อไป

9
อะไรคือความสมดุลที่ดีระหว่างการใช้ฟิลด์ซ้ำกับการสร้างฟิลด์ใหม่ในบริบทของการปรับขนาดฟิลด์
ฉันอ่านวลีต่อไปนี้บนเว็บไซต์: แทนที่จะเพิ่มเขตข้อมูลใหม่ลงในประเภทเนื้อหาการเพิ่มเขตข้อมูลที่มีอยู่เป็นตัวเลือกที่ดีกว่าเพื่อลดความซับซ้อนของระบบและปรับปรุงความสามารถในการปรับขยาย และมีข้อสงสัยเกิดขึ้น ในระบบที่เรากำลังพัฒนาเรามีความเป็นไปได้ที่จะนำเขตข้อมูลมาใช้ซ้ำในประเภทเนื้อหา 3 หรือ 4 ประเภท แต่แทนที่จะปรับปรุงความสามารถในการปรับขนาดตามคำพูดที่บอกว่าฉันกลัวว่ามันจะลดลงเพราะตารางของเขตข้อมูลจะกลายเป็นคอขวดเร็วขึ้น (อย่างน้อยนั่นคือเหตุผลของฉันในกรณีนี้เนื่องจากค่าทั้งหมดของฟิลด์นั้นเข้าด้วยกันจะเป็นสองสามล้านต่อปีและนั่นจะทำให้ตารางใหญ่เกินไป) คุณเห็นด้วยไหม? จะมีจำนวนแถวเท่าไรที่เหมาะสมที่สุดสำหรับการออกแบบเมื่อมีเป้าหมาย? ด้วยวิธีนี้เราสามารถตัดสินใจได้ว่าจะใช้ฟิลด์ใหม่เมื่อใดและจะสร้างใหม่เมื่อใด (แม้ว่าจะมีโอกาสนำมาใช้ซ้ำ)

2
PHP 5.4 และ Drupal 7
ฉันเคยได้ยินว่า PHP 5.4 เร็วกว่า PHP 5.3 มันจะโอเคที่ Drupal 7 จะทำงานต่ำกว่า 5.4 หรือโมดูลที่สนับสนุนต่างๆอาจเริ่มทำลายไซต์หรือไม่ อย่างไรก็ตามถ้าฉันใช้ APC แคชรหัสอาจจะ 5.4 จะไม่ให้ประโยชน์ใด ๆ เลย? ขอบคุณ
31 7  performance 

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 

2
กำจัดการปิดกั้นการแสดงผล JavaScript และ CSS ในเนื้อหาครึ่งหน้าบน
ฉันกำลังสร้างเว็บไซต์ Drupal 7 นี่คือบางส่วนของโมดูลที่ฉันใช้: Adaptivetheme (ธีม), มุมมองและบานหน้าต่างเนื้อหา, พาเนล, แผงเล็ก ๆ , แผงทุกที่, ตัวจัดการหน้า, Superfish สำหรับเมนู, เพิ่ม, เลือก (เลื่อนลง) สำหรับการปรับปรุงประสิทธิภาพเว็บไซต์ของฉันและการจัดการที่มี CSS และไฟล์ JS ฉันใช้โมดูล Advagg เมื่อเรียกใช้การทดสอบ Pagespeed ของ Googleฉันได้รับข้อผิดพลาดต่อไปนี้เป็น "ควรแก้ไข": กำจัด JavaScript และ CSS ที่ปิดกั้นการเรนเดอร์ใน เนื้อหาครึ่งหน้าบนหน้าเว็บของคุณมี 6 สคริปต์การบล็อกทรัพยากรและ 8 การบล็อคทรัพยากร CSS สิ่งนี้ทำให้เกิดความล่าช้าในการแสดงผลหน้าเว็บของคุณ ไม่สามารถแสดงเนื้อหาข้างต้นในหน้าของคุณได้โดยไม่ต้องรอให้ทรัพยากรต่อไปนี้โหลด พยายามเลื่อนหรือโหลดทรัพยากรการบล็อกแบบอะซิงโครนัสหรืออินไลน์ส่วนที่สำคัญของทรัพยากรเหล่านั้นโดยตรงใน HTML นี่คือข้อมูลที่ Google ใช้: ลบ JavaScript บล็อกการแสดงผล …

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

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

4
วิธีการรับแกนเพื่อยกระดับการกำหนดค่า MySQL master / slave?
ฉันอ่านคำถามนี้การจำลองแบบ MySQL master / slave ไม่ทำงานและคำตอบ: การใช้ฐานข้อมูล Slave นั้นแทบจะไม่มีการใช้งานใน Drupal core หากคุณกำลังพัฒนาโมดูลของคุณเองการเรียกไปยัง db_query จำเป็นต้องระบุว่าพวกเขาต้องการใช้ฐานข้อมูลทาสโดยใช้อาร์เรย์ $ options ดู DatabaseConnection :: defaultOptions สำหรับวิธีการตั้งค่าอาร์เรย์นี้ มีวิธีโดยไม่ฆ่าลูกแมวที่แฮ็คคอร์เพื่อรับdb_query()และdb_select()สร้างคิวรีแบบ SELECT เพิ่มเติมหรือไม่ ตามค่าเริ่มต้นฟังก์ชั่นเหล่านี้จะทำการค้นหาข้อมูลหลักยกเว้นจะบอกให้ทำการสืบค้น Slave โดยเฉพาะ (ดูที่ API) คุณต้องเขียนdb_query($query, $args, array('target' => 'slave'))เพื่อสอบถามทาสและคอร์ (และโมดูลทั้งหมด) ไม่ได้ถูกเขียนเพื่อให้ได้สิ่งนี้ ค้นหาเท่านั้น(ดูส่วนทาส) และผู้รวบรวมดูเหมือนจะใช้ประโยชน์จากสิ่งนี้ แก้ไข:ต.ค. 25 ฉันเห็น pressflow 7 หมดแล้ว แต่ฉันไม่แน่ใจว่าจะช่วยได้มากตอนนี้หรือไม่ ฉันไม่พบสิ่งที่เกี่ยวข้องดังนั้นลองใช้ความช่วยเหลือเล็กน้อยเพื่อช่วยให้ได้รับคำตอบ แก้ไข:ต.ค. , 31 ฉันกังวลเกี่ยวกับความคิดเห็นของ …

3
วิธี / การนำไปใช้ที่รวดเร็วที่สุดสำหรับการโทรกลับ Ajax คืออะไร
ฉันมีแผนที่ที่โหลดเครื่องหมายผ่านอาแจ็กซ์ในกิจกรรมแผนที่หลายแห่ง ขณะนี้ฉันกำหนดการเรียกกลับหน้าเว็บที่กำหนดเองสำหรับhook_menu()รายการของฉันซึ่งพิมพ์ json / js ของฉัน ตั้งแต่การเรียกกลับหน้าเว็บของฉันไม่ได้กลับเนื้อหาใด ๆ และเพียงพิมพ์เนื้อหา Drupal ไม่ทำให้แม่แบบเต็มรูปแบบเมนู ฯลฯ และจึงช่วยให้ผมกลับไปหน้าเว็บที่มีเพียง JavaScript ของฉัน แม้ว่าจะใช้งานได้ แต่ฉันเชื่อว่า Drupal ยังคง bootstrapping อย่างสมบูรณ์ซึ่งหมายความว่าจะเพิ่มค่าใช้จ่ายจำนวนมากที่ฉันต้องการจะลดลง ฉันได้ดูตัวจัดการการเรียกกลับ JavaScript ที่มีประสิทธิภาพสูงซึ่งมีตัวเองว่าเป็น "ตัวจัดการการเรียกกลับที่มีประสิทธิภาพสูงของ JavaScript" และในระยะสั้นดูเหมือนว่าจะเสนอคำjs.phpชมเชยindex.phpเพื่อส่งคำขอของคุณไปยังและกำหนด / จำกัด / เพิ่มประสิทธิภาพ bootstrapping Drupal ทำตามค่าเริ่มต้น น่าเสียดายที่โครงการjsยังไม่มีการเปิดตัว D7 ( คำร้องหนึ่งรายการที่นี่ ) ซึ่งนำเราไปสู่จุดเริ่มต้น ... วิธีที่เร็วที่สุดในการใช้งาน Ajax callback ใน Drupal คืออะไร
18 7  performance  ajax 

1
Drupal โทร“ is_dir” มากกว่า 4,000 ครั้ง?
หลังจากประสบปัญหาในการโหลดเว็บไซต์ที่สำคัญมากฉันได้ติดตั้ง XHPROF และตรวจสอบสถิติเพื่อดูว่าฉันสามารถปรับปรุงรหัสของฉันได้ที่ไหน ฉันพบสิ่งที่น่าสนใจที่ฉันไม่เข้าใจ Drupal เรียก "is_dir" มากกว่า 4000 ครั้งในเกือบทุกคำขอและใช้เวลาประมาณ 800ms ในการดำเนินการ ทำไมเป็นอย่างนั้นและมีวิธีที่จะเพิ่มความเร็วได้อย่างไร โดยเวลาในการโหลดสองถึงสี่วินาทีคือ 800ms เป็นส่วนใหญ่
17 7  performance 

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