เว็บไซต์ WordPress ของคุณสามารถปรับขนาดได้หรือไม่?

เผยแพร่แล้ว: 2017-05-16

เว็บไซต์ WordPress ของคุณสามารถปรับขนาดได้หรือไม่? มีตัวอย่างมากมายของการติดตั้ง WordPress ขนาดใหญ่ในป่า ตัวอย่างเช่น WordPress.com เป็นการติดตั้งแบบหลายไซต์ขนาดใหญ่ที่มีการเปิดดูหน้าเว็บหลายสิบล้านครั้งในแต่ละเดือน นอกจากนี้ยังให้บริการผู้ใช้หลายพันคนในช่วงเวลาที่กำหนด

ตัวอย่างอื่นๆ ได้แก่ Time, TechCrunch และ CNN ไม่ต้องสงสัยเลย คุณสามารถสร้างเว็บไซต์ที่ปรับขนาดได้อย่างแน่นอนด้วย WordPress ซึ่งมีประสิทธิภาพเพียงพอที่จะรองรับปริมาณการเข้าชมเท่าใดก็ได้ ตราบใดที่คุณสร้างสภาพแวดล้อมที่เหมาะสม การกำหนดค่าการติดตั้งของคุณเป็นมาตราส่วนอาจซับซ้อน แต่ก็เป็นการลงทุนที่คุ้มค่าสำหรับเจ้าของไซต์ทุกคน ในโพสต์นี้ เราจะพูดถึงบางประเด็นที่คุณสามารถมุ่งเน้นเพื่อให้แน่ใจว่าสามารถปรับขนาดได้ และเสนอเคล็ดลับในการตั้งค่าสภาพแวดล้อมที่ปรับขนาดได้

เราหมายถึงอะไรโดย Scalable?

อะไรทำให้เว็บไซต์ WordPress สามารถปรับขนาดได้? เว็บไซต์ WordPress ที่ปรับขนาดได้มีความสามารถในการเพิ่มความจุโดยการขยายหรือขยายออก

  • ขยายขนาด - เพิ่มพลังของฮาร์ดแวร์ (RAM มากขึ้น, CPU ที่ทรงพลังยิ่งขึ้น)
  • ขยายขนาด – เพิ่มความจุด้วยการเพิ่มโหนด (มีสำเนาที่เหมือนกันของไซต์ของคุณกระจายอยู่ในหลายเครื่อง)

การทำเช่นนี้ช่วยให้คุณมีความยืดหยุ่นเพื่อรองรับการเติบโต โดยพื้นฐานแล้ว คุณต้องการขยายไซต์ของคุณได้โดยไม่มีปัญหาใดๆ ด้วย WordPress คุณจะไม่ต้องกังวลเกี่ยวกับซอฟต์แวร์ แกนหลักของ WordPress ใช้หลักการของสถาปัตยกรรมซอฟต์แวร์แบบแบ่งชั้น เช่น การแยกมาร์กอัป (HTML และ CSS) ออกจากข้อมูล (ฐานข้อมูล MySQL) ด้านล่างนี้ เราจะสำรวจวิธีการบางอย่างที่คุณสามารถรับประกันความสามารถในการปรับขนาดได้สูงสุด

การพัฒนาสภาพแวดล้อม

เว็บไซต์ WordPress ของคุณสามารถปรับขนาดได้หรือไม่?

ภาพโดย Sentavio / shutterstock.com

หนึ่งในส่วนที่ยากที่สุดในการปรับขนาดไซต์ WordPress คือการตั้งค่าสภาพแวดล้อมการพัฒนา สภาพแวดล้อมการพัฒนาที่ดีจะสะท้อนสภาพแวดล้อมการผลิตโดยไม่มีปัญหาใดๆ หากคุณมีไซต์ขนาดเล็ก คุณสามารถหลีกหนีจากการพัฒนาแบบสดได้ แม้ว่าจะไม่มีการปรับขนาดแน่นอนก็ตาม

คุณจะต้องมีการควบคุมเวอร์ชันบางอย่างเพื่อให้แน่ใจว่านักพัฒนาซอฟต์แวร์จะไม่เหยียบย่ำเท้าของกันและกัน ซอฟต์แวร์ควบคุมเวอร์ชันจะบันทึกการเปลี่ยนแปลงไฟล์ของคุณเมื่อเวลาผ่านไปเพื่อให้สามารถเรียกคืนได้ในภายหลัง นอกจากนี้ยังเป็นวิธีที่มีประสิทธิภาพและเป็นมืออาชีพมากขึ้นในการพัฒนาเว็บไซต์ WordPress ที่ปรับขนาดได้

มีวิธีแก้ปัญหาที่สวยงามมากมาย ต้องขอบคุณการทำงานอย่างหนักของชุมชนโอเพ่นซอร์ส Git เป็นซอฟต์แวร์ควบคุมเวอร์ชันแบบกระจายที่ช่วยให้นักพัฒนาหลายคนทำงานจากระยะไกลบนที่เก็บแยกต่างหาก มีความน่าเชื่อถือ รวดเร็ว และสามารถจัดการโครงการขนาดใหญ่ได้อย่างเหลือเชื่อ ท้ายที่สุด Git ถูกสร้างขึ้นโดย Linus Torvalds สำหรับการพัฒนา Linux

คุณสามารถสร้างสภาพแวดล้อมการพัฒนานักฆ่าด้วย VVV (Varying Vagrant Vagrants) ซอฟต์แวร์โอเพ่นซอร์สฟรีนี้เหมาะสำหรับการสร้างสภาพแวดล้อมการพัฒนาแบบกระจายด้วย WordPress ดูคู่มือขั้นสูงสุดในการตั้งค่าสภาพแวดล้อมการพัฒนา WordPress ของคุณสำหรับบทแนะนำเชิงลึกเกี่ยวกับเรื่องนี้ WordPress.org ยังมีบทช่วยสอนที่เป็นประโยชน์เกี่ยวกับการติดตั้ง VVV

ความสามารถในการปรับขนาดในแนวนอน

การขยายขนาดหรือการปรับขนาดแนวนอนเป็นหนึ่งในแนวคิดที่สำคัญที่สุดในการสร้างสภาพแวดล้อมที่ปรับขนาดได้ สิ่งนี้ทำให้คุณสามารถเรียกใช้เว็บไซต์ของคุณบนเครื่องต่างๆ (เซิร์ฟเวอร์) ได้ บางคนเรียกโครงสร้างพื้นฐานนี้ว่า “สถาปัตยกรรมแบบยืดหยุ่น” – เนื่องจากปริมาณทรัพยากรที่คุณมีสามารถขยายหรือลดน้อยลงตามความจำเป็น

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

หากไซต์ของคุณมีการเข้าชมเพิ่มขึ้นอย่างรวดเร็ว ตัวโหลดบาลานซ์จะกำหนดวิธีจัดสรรทรัพยากรเพิ่มเติมอย่างเหมาะสมเพื่อรับมือกับปัญหาที่หย่อนคล้อยโดยการขยายขนาดออกไป ซึ่งจะเกิดขึ้นแบบไดนามิก และผู้เข้าชมของคุณจะไม่สังเกตเห็นสิ่งใดเลย แนวคิดก็คือคุณมีสำเนาเว็บไซต์ของคุณที่เหมือนกันซึ่งแจกจ่ายไปยังเครื่องหลายเครื่อง และพวกเขาต่างก็รู้จักกันดี ดังนั้นจึงมีคอมพิวเตอร์อยู่ในคลัสเตอร์ที่สแตนด์บายเสมอหากมีการรับส่งข้อมูลเพิ่มขึ้นหรือส่วนประกอบของสแต็กล้มเหลว

บริการโฮสติ้งบนคลาวด์ เช่น Amazon Web Services (AWS) หรือ RackSpace เป็นผู้ให้บริการคลาวด์โฮสติ้งยอดนิยมสองรายที่เปิดใช้งานการปรับขนาดในแนวนอน ดูบทช่วยสอนนี้เกี่ยวกับการปรับใช้เว็บไซต์ WordPress ที่มีความพร้อมใช้งานสูงกับ AWS สำหรับตัวอย่างโครงสร้างพื้นฐานเซิร์ฟเวอร์ทั่วไปที่มีสถาปัตยกรรมแบบยืดหยุ่น

เก็บเอาไว้

แคชคือพื้นที่จัดเก็บชั่วคราวสำหรับหน่วยความจำ การแคชสามารถช่วยให้คุณส่งเนื้อหาได้เร็วขึ้น และหลีกเลี่ยงปัญหาที่เกิดพร้อมกัน CMS ทุกตัวต้องการแคชบางประเภท WordPress ก็ไม่ต่างกัน ข่าวร้ายก็คือการแคชอาจซับซ้อนอย่างน่าขัน ข่าวดีก็คือชุมชนโอเพ่นซอร์สได้เสนอวิธีแก้ปัญหาต่างๆ มากมายในเรื่องนี้ มีเครื่องมือมากมายที่จะช่วยคุณ รวมถึง WP Super Cache และ Batcache

Reverse Proxy Caching (การแคชหน้า)

การแคชพร็อกซีย้อนกลับเป็นวิธีที่มีประสิทธิภาพในการโหลดหน้าเว็บแบบไดนามิก reverse proxy เป็นบริการที่ทำหน้าที่เป็นตัวกลางระหว่าง WordPress และเบราว์เซอร์ สิ่งนี้สามารถช่วยลดการโหลดบนเซิร์ฟเวอร์หลักของคุณ และลดเวลาในการโหลดหน้าเว็บที่รับรู้ได้

ปัญหาคือเซิร์ฟเวอร์ PHP มีทรัพยากรจำนวนมาก พวกเขาดำเนินการงานที่ซับซ้อนจำนวนมาก ซึ่งสามารถชะงักเซิร์ฟเวอร์ของคุณ คุณสามารถแบ่งเบาภาระบนเซิร์ฟเวอร์ของคุณโดยใช้ reverse proxy

ตัวอย่างเช่น สมมติว่าคุณมีผู้เข้าชมที่หน้าแรกของเว็บไซต์ของคุณ เป็นการมาเยือนครั้งแรกของวัน ณ จุดนี้ยังไม่มีโฮมเพจเวอร์ชันแคช

  1. ผู้ใช้ป้อน URL ในแถบที่อยู่เพื่อขอหน้าจากเซิร์ฟเวอร์
  2. คำขอส่งผ่านพร็อกซี ซึ่งยังไม่มีเวอร์ชันแคชของเพจ ไปยัง WordPress
  3. WordPress สร้างหน้าแรกและตอบกลับไปยัง reverse proxy
  4. จากนั้นพร็อกซีจะส่งการตอบกลับไปยังเบราว์เซอร์ และบันทึกสำเนาที่แคชไว้ของหน้านั้น
  5. ตราบใดที่แคชยังมีอยู่ ผู้ใช้ที่ร้องขอหน้านั้นจะได้รับเวอร์ชันแคชของเพจ

การแคชวัตถุ

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

มีตัวเลือกมากมายสำหรับการแคช เครือข่ายการส่งเนื้อหา เช่น Cloudflare, Akamai, EdgeCast และ KeyCDN สามารถทำหน้าที่เป็น reverse proxy ขนาดใหญ่ได้ วานิชและ WP Super Cache เป็นสองตัวเลือกยอดนิยมในการใช้แคชกับ WordPress

ประสิทธิภาพของแบบสอบถาม

เว็บไซต์ WordPress ของคุณสามารถปรับขนาดได้หรือไม่?

ภาพโดย Oleg Erin / shutterstock.com

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

ข้อความค้นหาที่ช้าเกิดจากปัญหากับฐานข้อมูล SQL เครือข่ายที่ใช้งานไซต์ของคุณ หรือเซิร์ฟเวอร์ มีสาเหตุหลายประการที่ทำให้สิ่งนี้เกิดขึ้นได้ แน่นอนว่าไม่มีการแก้ไขขนาดเดียวทั้งหมด ขั้นตอนแรกในการปรับปรุงประสิทธิภาพของคิวรีคือการระบุคิวรีที่ช้า

เมื่อคุณระบุปัญหาแล้ว คุณสามารถดำเนินการได้ บางครั้งคำตอบอาจง่ายพอๆ กับการซื้อแบนด์วิดท์เพิ่ม บางครั้งคุณอาจต้องปรับแต่งโค้ด ซึ่งอาจเป็นเรื่องยาก

ตรวจสอบปลั๊กอิน WordPress Query Monitor หากคุณกำลังมองหาเครื่องมือในการตรวจสอบข้อความค้นหา

ปรับปรุงการค้นหา

หากคุณมีโพสต์จำนวนมาก เช่น 1 ล้าน คุณจะต้องคำนึงถึงวิธีการตั้งค่าฐานข้อมูลของคุณ ไซต์ขนาดใหญ่ส่วนใหญ่มีดัชนีการค้นหาที่ปรับให้เหมาะสม ซึ่งเป็นเครื่องมือค้นหาที่กำหนดเองที่เพิ่มลงใน WordPress

ข้อความค้นหาในการค้นหาเนื้อหาใน WordPress ใช้งานไม่ได้หากคุณมีบทความจำนวนมากบนไซต์ของคุณ นอกจากนี้ยังทิ้งสิ่งที่ต้องการในแง่ของความเร็ว การแก้ไขทั่วไปสำหรับปัญหานี้คือการสร้างดัชนีการค้นหาเฉพาะ การทำเช่นนี้จะป้องกันไม่ให้การสืบค้นข้อมูลเหล่านั้นออกจากฐานข้อมูล ทำให้ผู้ใช้ได้รับประสบการณ์การท่องเว็บที่ดียิ่งขึ้น รวมทั้งเพิ่มประสิทธิภาพของฐานข้อมูลของคุณ

เครื่องมือค้นหายอดนิยมสำหรับไซต์ WordPress ขนาดใหญ่ ได้แก่ ElasticSearch และ ApacheSolr

ห่อ

การเริ่มต้นในระดับที่เหมาะสมก็มีความสำคัญเช่นกัน เริ่มง่ายๆ แล้วเพิ่มประสิทธิภาพในภายหลัง คำพูดของ Donald Knuth "การเพิ่มประสิทธิภาพก่อนกำหนดเป็นรากเหง้าของความชั่วร้ายทั้งหมด" รองรับการเติบโต แต่อย่าพยายามบีบไซต์อีคอมเมิร์ซขนาดใหญ่บนพื้นฐานเล็กๆ หรือในทางกลับกัน คุณอาจไม่จำเป็นต้องสร้างไซต์ที่ปรับขนาดได้ หากเป็นไซต์ที่เรียบง่าย เช่น หน้ากิจกรรม

โดยทั่วไป สถาปัตยกรรมแบบยืดหยุ่นเป็นมาตรฐานสำหรับเว็บไซต์อีคอมเมิร์ซ แม้ว่าสิ่งเหล่านี้อาจดูซับซ้อนอย่างไม่น่าเชื่อ แต่คุณไม่จำเป็นต้องเข้าใจทั้งหมด ตราบใดที่คุณมีความเข้าใจพื้นฐาน คุณสามารถสร้างสภาพแวดล้อมที่แข็งแกร่งสำหรับไซต์ขนาดใหญ่ได้ สิ่งที่คุณต้องทำคือค้นหาบริการคลาวด์ที่เหมาะสม และเชื่อมต่อกับ CDN ที่ถูกต้อง

รู้สึกอิสระที่จะแบ่งปันประสบการณ์ของคุณในส่วนความคิดเห็น คุณทำตามขั้นตอนอะไรเพื่อทำให้เว็บไซต์ WordPress ของคุณปรับขนาดได้?

ภาพขนาดย่อของบทความโดย turbodesign / shutterstock.com