การมีโมดูลที่เปิดใช้งานเพิ่มเติมทำให้ไซต์ช้าลงหรือไม่
ฉันได้ติดตั้ง 30 โมดูลสำหรับเว็บไซต์ของฉันและฉันกลัวว่ามันจะช้าเกินไป
การมีโมดูลที่เปิดใช้งานเพิ่มเติมทำให้ไซต์ช้าลงหรือไม่
ฉันได้ติดตั้ง 30 โมดูลสำหรับเว็บไซต์ของฉันและฉันกลัวว่ามันจะช้าเกินไป
คำตอบ:
การมีโมดูลที่เปิดใช้งานมากขึ้นจะทำให้การบูตของ Drupal ช้าลงเนื่องจากมีการโหลดไฟล์และแยกวิเคราะห์มากขึ้น นอกจากนั้นการมีโมดูลที่เปิดใช้งานมากขึ้นไม่ได้หมายความว่าจะมีไซต์ที่ช้ากว่าโดยอัตโนมัติเนื่องจากโมดูลทั้งหมดจะใช้รหัสสำหรับหน้าเว็บที่ร้องขอทุกหน้า
ตัวอย่างเช่นหากคุณติดตั้ง Views และคุณเปิดใช้งานการดูหน้าแรกเท่านั้นวิวจะไม่ถูกดำเนินการเมื่อเพจที่ร้องขอเป็นหน้าโหนด แม้ว่าโมดูล Views จะใช้งานhook_menu_alter()
และจะถูกดำเนินการแม้ว่าคุณจะไม่ได้เปิดใช้งานมุมมองใด ๆ ก็ตาม แต่โมดูล Views จะถูกเปิดใช้งาน การนำไปใช้งานใด ๆhook_menu_alter()
จะถูกเรียกใช้เมื่อเมนูถูกสร้างขึ้นใหม่และไม่ได้เกิดขึ้นตามคำขอหน้าเว็บทุกหน้า
ใช่. อย่างไรก็ตาม 30 ไม่มีอะไรต้องกังวล คุณกำลังมีปัญหาเมื่อคุณไป 100;)
ติดตั้งแคช bytecode (APC หรือ XCache) เพื่อกำจัดการชะลอตัวส่วนใหญ่ของการรวมไฟล์จำนวนมากและตรวจสอบให้แน่ใจว่าได้ลบโมดูลที่ไม่ได้ใช้เป็นระยะ ๆ (โดยปกติทุกโครงการจะรวบรวมโมดูลที่ไม่ได้ใช้ในบางช่วงระหว่างการพัฒนา)
เพื่อเติมเต็มการตอบสนองของ @Bojan Zivanovic & @kiamlaluno ที่เหมาะสมคุณควรใส่ใจเกี่ยวกับการโต้ตอบของโมดูล การมีโมดูลจำนวนมากเพิ่มความเสี่ยงของการมีปฏิสัมพันธ์ที่ไม่ดี(เช่นการโต้ตอบกับยา) ฉันจะบอกว่ามีมากกว่า 50 โมดูลจะกลายเป็นอันตรายและคุณควรตรวจสอบก่อนว่าคุณไม่ได้ใช้หลายโมดูลสำหรับโดเมนงานเดียวกัน
เป็นตัวอย่างการสร้างหน้าเว็บที่มีบล็อกมุมมองพาเนลฟิลด์ที่มีมุมมองบล็อกที่มีมุมมองบล็อกที่มีพาเนลที่มีมุมมองที่มี ... ความคิดคือการได้รับบางสิ่งที่สมองปกติสามารถเข้าใจได้ . สิ่งนี้มีผลกระทบอย่างมากต่อการแสดงเมื่อพฤติกรรมการโหลดที่ซับซ้อนหลายอย่างถูกซ่อนและล่ามโซ่ อีกตัวอย่างหนึ่งคือการเพิ่มกฎ ACL หลายกฎจากหลายโมดูลสำหรับแต่ละเนื้อหา
หากคุณกลัวการแสดงให้ใช้โมดูลการทำโปรไฟล์และติดตามความแตกต่างเสมอหลังจากการเพิ่มโมดูลใหม่แต่ละครั้ง บางครั้งมีตะขอเล็ก ๆ ที่มี SQL อยู่ภายในหรือเทมเพลตที่กำหนดเองจะช่วยประหยัดเวลาในการสร้างเว็บไซต์ของคุณ
สิ่งที่ควรคำนึงถึงสามประการในระหว่างการสร้างเว็บไซต์ที่สามารถเพิ่มความเร็วเว็บไซต์ drupal ของคุณคือ:
และเกี่ยวกับส่วนโมดูลเห็นได้ชัดว่าจำนวนโมดูลมากขึ้นช้าลงความเร็วจะเป็นเพราะพวกเขาต้องการแรมขนาดใหญ่ในการประมวลผล ..
ยังโมดูล 30 ถึง 60 จะไม่ส่งผลกระทบต่อเว็บไซต์ของคุณมาก
ปันส่วนสำหรับเวลาของการโหลดเว็บไซต์และจำนวนของโมดูลจะเหมือน 100 โมดูลจะล่าช้าไซต์โดย 350ms ถึง 650ms
หวังว่าคุณจะได้ไซต์ต่อไปที่คุณเก็บไว้ในใจ .. :)