WordPress Cache: สิ่งที่สามารถแคชได้และวิธีที่เราทำ

เผยแพร่แล้ว: 2017-04-28

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

แคชคืออะไร?

ในการคำนวณมีสิ่งที่เรียกว่า "แคช" ซึ่งใช้ส่วนประกอบซอฟต์แวร์หรือฮาร์ดแวร์เพื่อเก็บค่าชั่วคราวและเรียกข้อมูลเหล่านี้เร็วขึ้นในอนาคต ค่าต่างๆ เช่น การสืบค้น MySQL หรือ bytecode ของ PHP ที่คอมไพล์แล้ว รวมถึงข้อมูลที่ซ้ำกัน เช่น HTML และรูปภาพ แทบทุกอย่างจริงๆ

ประโยชน์ของการแคช

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

แคชอะไรได้บ้าง

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

เอาต์พุต HTML

วิธีแรกคือการแคชหน้า HTML เอง มีปลั๊กอินแคชของ WordPress มากมาย เช่น WP Rocket และ W3 Total Cache ที่ทำแบบนั้นและอีกมากมาย ปลั๊กอินเหล่านี้แคชผลลัพธ์ของเอาต์พุต HTML ที่ช่วยประหยัดเวลาสำหรับคำขอในอนาคต นอกจากนี้ ทุกปลั๊กอินยังให้กลไกการทำให้แคชใช้งานไม่ได้ คุณจึงสามารถให้บริการเนื้อหาที่ไม่ได้แคชได้เมื่อต้องการ

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

คุณจะต้องเข้าถึงแดชบอร์ดหรือวิธีการติดตั้งปลั๊กอินใน WordPress เพื่อดำเนินการดังกล่าว

อ้างอิง:

  • WP Rocket
  • ปลั๊กอิน W3 Total Cache WordPress

PHP OpCache

OpCaching เป็นเทคนิคที่ PHP นำไฟล์ PHP ต้นทางมาและคอมไพล์ให้อยู่ในรูปแบบตัวกลางที่เรียกว่า bytecode Bytecode เหมือนกับรหัสเครื่องของคอมพิวเตอร์ แต่หมายถึงรหัสเครื่องที่ดำเนินการโดย "เครื่องเสมือน" (ในกรณีนี้คือ PHP) แทนที่จะเป็นของจริง เนื่องจากเป็นรหัสเครื่องและอยู่ในหน่วยความจำ จึงสามารถดำเนินการได้เร็วกว่าการให้ล่าม PHP แยกวิเคราะห์คำสั่งในแต่ละครั้งและดำเนินการ

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

คุณต้องมีสิทธิ์เข้าถึงไฟล์การกำหนดค่า PHP เพื่อเปิดใช้งาน PHP OpCache

ข้อมูลอ้างอิง: OpCache

โฮสต์เว็บไซต์ของคุณด้วย Pressidium

รับประกันคืนเงิน 60 วัน

ดูแผนของเรา

PHP Object Cache

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

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

คุณจะต้องมีสิทธิ์เข้าถึงการกำหนดค่าของ PHP เพื่อเปิดใช้งานการแคช PHP Object คุณจะต้องเข้าถึงอินสแตนซ์ Redis หรือ Memcached

อ้างอิง

  • ปลั๊กอิน Redis WordPress
  • ปลั๊กอิน WordPress Memcached
  • เอกสาร Redis
  • Memcached Wiki

MySQL Query Caching

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

เพื่อที่คุณจะต้องมีสิทธิ์เข้าถึงเซิร์ฟเวอร์ฐานข้อมูล

ข้อมูลอ้างอิง: MySQL 8.0 Query Cache

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

วิธีที่เราแก้ปัญหาทุกอย่างด้วย Multilayer Caching ของ Pressidium

คำตอบนั้นง่าย เราได้นำการแคชไปใช้ทุกที่: บน WordPress ทุกชั้น

สำหรับเอาต์พุต HTML เรา ใช้การแคชสองชั้น hot และ warm เลเยอร์เหล่านี้เป็นส่วนหนึ่งของกลไกแคชที่ปรับเปลี่ยนได้ของเรา เอ็นจิ้นของเราสามารถกำหนดโปรไฟล์ไซต์ของคุณและบังคับใช้กฎการแคชที่มีประสิทธิภาพสูงสุด แต่เราจะพูดถึงรายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้ในบทความอื่น ดังนั้น Hot cache จึงเป็นข้อมูลที่อยู่ในหน่วยความจำและสามารถเข้าถึงได้อย่างรวดเร็ว Warm Cache คือข้อมูลที่อยู่ในดิสก์ SSD ที่ล้ำสมัย สิ่งนี้ จะเพิ่มอัตราส่วนการชนของแคชโดยรวม และส่งผลให้ไซต์ของคุณทำงานได้ดีกว่าที่เก็บข้อมูลทั่วไปอย่างมาก

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

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

ไม่ว่าความต้องการแคชและงบประมาณของคุณจะเป็นอย่างไร เราสามารถส่งมอบได้