ในตอนนี้ คุณอาจเคยเจอบทความมากมายเกี่ยวกับการเพิ่มประสิทธิภาพการทำงานของ WordPress ซึ่งส่วนใหญ่มีเคล็ดลับเดิมๆ อยู่ด้วย การเจอคำแนะนำเดิมๆ ที่ไม่ได้ผลซ้ำแล้วซ้ำเล่าโดยไม่มีความคืบหน้าใดๆ อาจเป็นเรื่องน่าหงุดหงิดได้
หากคุณรู้สึกสับสนและไม่มีทางเลือกอื่น ขั้นตอนต่อไปนี้อาจเป็นทางออกสำหรับคุณ นี่คือกลยุทธ์เดียวกับที่เราใช้ตามค่าเริ่มต้นในทุกไซต์ที่เราโฮสต์ ซึ่งรวมถึงแนวทางที่ครอบคลุมของเราในการเพิ่มประสิทธิภาพการทำงาน ในขณะที่เราเจาะลึกถึงรายละเอียดเฉพาะของโครงสร้างพื้นฐานของเรา หลักการเหล่านี้สามารถปรับให้เหมาะกับสภาพแวดล้อมการโฮสต์แทบทุกประเภทได้
กฎข้อหนึ่งที่เรามักจะปฏิบัติตามคือ สิ่งต่างๆ ไม่จำเป็นต้องเริ่มต้นโดยปรับให้เหมาะสม ตัวอย่างเช่น หากคุณต้องทำงานมากมายเพื่อให้แบบอักษรของ Google ทำงานได้ดีขึ้น คุณอาจต้องพิจารณาว่าคุณจำเป็นต้องใช้แบบอักษรเหล่านี้จริงหรือไม่
ด้วยจิตวิญญาณนี้ เราจะเริ่มต้นด้วยการปิดใช้งานคุณลักษณะหลายอย่างของ WordPress ซึ่งมีศักยภาพที่แท้จริง
0. การรีเซ็ต WordPress:
1. ปิดใช้งาน WP Cron
WordPress ไม่มี cron ที่เหมาะสม เช่นเดียวกับที่คุณมีอยู่บนเซิร์ฟเวอร์ Linux ของคุณ แต่จะใช้ฟังก์ชันที่ทำงานทุกครั้งที่มีการเข้าถึงเว็บเซิร์ฟเวอร์
วิธีแก้ปัญหาที่ดีกว่ามากคือการใช้บริการภายนอกเพื่อเรียกใช้ cron สำหรับการติดตั้ง WordPress ของคุณ ที่ Raybeam เราใช้สิ่งที่น่าทึ่ง cron-job.org บริการ ทำการไล่งานทุกๆ 5 นาที กระบวนการที่ถูกเรียกใช้โดย cron อาจต้องใช้เวลาสักระยะจึงจะเสร็จสิ้น ดังนั้นควรมีช่องว่างที่สมเหตุสมผลระหว่างกระบวนการเหล่านี้
การปิดใช้งาน WP Cron ทำได้โดยการใส่ค่าคงที่ต่อไปนี้ใน wp-config.php file:
กำหนด('DISABLE_WP_CRON', true);
สิ่งสำคัญคือการตรวจสอบว่า cron ภายนอกของคุณกำลังทำงานอยู่จริงหรือไม่ และปลั๊กอินที่ดีที่จะทำสิ่งนั้นคือ ตัวบันทึกครอน.
2. ปิดใช้งานหรือจำกัดการแก้ไขโพสต์
Post Revisions จะบันทึกการเปลี่ยนแปลงทั้งหมดที่คุณทำกับทุกโพสต์บน WordPress ของคุณ และสามารถสะสมไว้ในฐานข้อมูลของคุณได้อย่างชัดเจน ตั้งค่าเป็นค่าที่คุณสามารถใช้งานได้สะดวกหรือปิดใช้งานด้วยค่าคงที่ต่อไปนี้ wp-config.php file:
กำหนด('WP_POST_REVISIONS', '0');
คุณยังสามารถตั้งค่าการแก้ไขไม่จำกัดได้ด้วย “-1” และตั้งค่าให้ลบออกโดยอัตโนมัติหลังจากเวลาที่กำหนด โดยใช้ปลั๊กอิน ซึ่งเราจะกล่าวถึงในภายหลัง
3. ปิดการใช้งาน Trackbacks และ Pingbacks
Pingbacks เป็นสิ่งน่ารำคาญและสร้างความยุ่งเหยิงที่ไม่จำเป็นในการติดตั้งของคุณ คุณสามารถปิดใช้งานได้ในการตั้งค่าการสนทนาของแดชบอร์ด และเพิ่มโค้ดต่อไปนี้ลงใน ฟังก์ชั่น.php ไฟล์ในธีมของคุณหรือปลั๊กอิน mu ที่กำหนดเองเพื่อปิดการใช้งาน pingback ของตัวเอง:
ฟังก์ชัน wpsites_disable_self_pingbacks( &$links ) { foreach ( $links as $l => $link ) if ( 0 === strpos( $link, get_option( 'home' ) ) ) unset($links[$l]); } add_action( 'pre_ping', 'wpsites_disable_self_pingbacks' );
4. ปิดการใช้งาน Capital P
มีตัวกรองที่น่าสนใจใน WordPress ที่จะป้องกันไม่ให้คุณเขียนคำนั้น เวิร์ดเพรส without a capital P, like so: WordPress
คุณสามารถลบออกได้ด้วยฟังก์ชั่นต่อไปนี้:
remove_filter('เนื้อหา', 'capital_P_dangit', 11); remove_filter('เนื้อหา', 'capital_P_dangit', 11); remove_filter('wp_title', 'capital_P_dangit', 11); remove_filter('comment_text', 'capital_P_dangit', 31); remove_filter('widget_text_content', 'capital_P_dangit', 11);
ตัวอย่างโค้ดจัดทำโดย ClassicPress
และคุณสามารถแทนที่ฟังก์ชั่นได้โดยเพียงแค่เขียน เวิร์ดเพรส อย่างถูกต้อง.
5. ปิดใช้งาน XML-RPC
XML-RPC เป็นฟีเจอร์ที่ล้าสมัยใน WordPress และมักแนะนำให้ปิดใช้งาน เนื่องจากสามารถปรับปรุงประสิทธิภาพของไซต์ของคุณได้ และที่สำคัญกว่านั้นคือความปลอดภัย เนื่องจากอาจเป็นช่องทางการโจมตีแบบบรูทฟอร์ซได้ เว้นแต่คุณต้องการฟังก์ชันที่จัดให้โดยเฉพาะ เช่น สำหรับแอปมือถือหรือการเผยแพร่จากระยะไกล คุณสามารถปิดใช้งานได้อย่างปลอดภัย
มีหลายวิธีในการปิดการใช้งานผ่าน Apache, Nginx หรือ PHP และปลั๊กอินที่เกี่ยวข้องกับความปลอดภัยและการเข้าสู่ระบบส่วนใหญ่จะจัดการกับปัญหานี้ วิธีที่ง่ายที่สุดก็คือใช้บรรทัดเดียวที่ให้มาโดย เจฟฟ์ สตาร์ จาก Perishable Press:
add_filter('xmlrpc_enabled', '__return_false');
บทความนี้ยังกล่าวถึงรายละเอียดเกี่ยวกับวิธีการโหลด XML-RPC และวิธีการปิดการใช้งานอื่นๆ ดังนั้นฉันขอแนะนำให้คุณ อ่านมันขอแนะนำให้ปิดการใช้งาน X-Pingbacks ด้วย:
// ปิดใช้งานฟังก์ชันส่วนหัว X-Pingback shapeSpace_disable_x_pingback($headers) { unset ($headers['X-Pingback']); return $headers; } add_filter('wp_headers', 'shapeSpace_disable_x_pingback');
6. ปิดใช้งาน Dashicons
Dashicons คือฟอนต์ไอคอนที่ใช้โดย WordPress Dashboard และจะโหลดที่ frontend แม้ว่าจะไม่ได้ใช้งานก็ตาม ปิดใช้งานโดยทำตามขั้นตอนต่อไปนี้:
// ลบฟังก์ชัน dashicons wpdocs_dequeue_dashicon() { if (current_user_can( 'update_core' )) { return; } wp_deregister_style('dashicons'); } add_action( 'wp_enqueue_scripts', 'wpdocs_dequeue_dashicon' );
7. ปิดใช้งานอีโมจิ
แม้ว่าอิโมจิจะเพิ่มขนาดหน้าเพียงเล็กน้อย แต่เราเลือกที่จะลบออกตามหลักการ
/**
* Disable the emoji's
*/
function disable_emojis() {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
add_filter( 'wp_resource_hints', 'disable_emojis_remove_dns_prefetch', 10, 2 );
}
add_action( 'init', 'disable_emojis' );
/**
* Filter function used to remove the tinymce emoji plugin.
*
* @param array $plugins
* @return array Difference betwen the two arrays
*/
function disable_emojis_tinymce( $plugins ) {
if ( is_array( $plugins ) ) {
return array_diff( $plugins, array( 'wpemoji' ) );
} else {
return array();
}
}
/**
* Remove emoji CDN hostname from DNS prefetching hints.
*
* @param array $urls URLs to print for resource hints.
* @param string $relation_type The relation type the URLs are printed for.
* @return array Difference betwen the two arrays.
*/
function disable_emojis_remove_dns_prefetch( $urls, $relation_type ) {
if ( 'dns-prefetch' == $relation_type ) {
/** This filter is documented in wp-includes/formatting.php */
$emoji_svg_url = apply_filters( 'emoji_svg_url', 'https://s.w.org/images/core/emoji/2/svg/' );
$urls = array_diff( $urls, array( $emoji_svg_url ) );
}
return $urls;
}
8. ปิดใช้งานการฝัง
การฝังอัตโนมัติอาจเป็นประโยชน์ แต่ยังมีทางเลือกอื่นที่มีประสิทธิภาพมากกว่าอีกหลายทาง ลบออกโดยใช้วิธีต่อไปนี้:
function disable_embeds_code_init() {
// Remove the REST API endpoint.
remove_action( 'rest_api_init', 'wp_oembed_register_route' );
// Turn off oEmbed auto discovery.
add_filter( 'embed_oembed_discover', '__return_false' );
// Don't filter oEmbed results.
remove_filter( 'oembed_dataparse', 'wp_filter_oembed_result', 10 );
// Remove oEmbed discovery links.
remove_action( 'wp_head', 'wp_oembed_add_discovery_links' );
// Remove oEmbed-specific JavaScript from the front-end and back-end.
remove_action( 'wp_head', 'wp_oembed_add_host_js' );
add_filter( 'tiny_mce_plugins', 'disable_embeds_tiny_mce_plugin' );
// Remove all embeds rewrite rules.
add_filter( 'rewrite_rules_array', 'disable_embeds_rewrites' );
// Remove filter of the oEmbed result before any HTTP requests are made.
remove_filter( 'pre_oembed_result', 'wp_filter_pre_oembed_result', 10 );
}
add_action( 'init', 'disable_embeds_code_init', 9999 );
function disable_embeds_tiny_mce_plugin($plugins) {
return array_diff($plugins, array('wpembed'));
}
function disable_embeds_rewrites($rules) {
foreach($rules as $rule => $rewrite) {
if(false !== strpos($rewrite, 'embed=true')) {
unset($rules[$rule]);
}
}
return $rules;
}
9. ควบคุมอัตราการเต้นของหัวใจ
Heartbeat มอบฟังก์ชันที่สำคัญให้กับ WordPress เช่น การบันทึกโพสต์อัตโนมัติและการล็อกการแก้ไข การจำกัดให้เหลือ 5 นาทีหรือ 300 วินาทีอาจส่งผลคล้ายกับการปิดใช้งานฟังก์ชันดังกล่าว:
ฟังก์ชัน wb_set_heartbeat_time_interval($settings) { $settings['interval']=300; return $settings; } add_filter('heartbeat_settings', 'wb_set_heartbeat_time_interval');
ใช้ช่วงเวลาเดียวกันในการบันทึกอัตโนมัติด้วยค่าคงที่นี้:
กำหนด('AUTOSAVE_INTERVAL', 300);
10. รีสตาร์ทด้วยส่วนหัวที่สะอาดขึ้น
WordPress ได้สะสมสิ่งต่างๆ มากมายตลอดหลายปีที่ผ่านมา โดยพยายามรองรับเทคโนโลยีใหม่ๆ และเทคโนโลยีบางอย่างก็ล้าสมัยหรือแทบไม่ได้ใช้แล้ว แต่สิ่งเหล่านี้ยังคงโหลดได้ในทุกหน้า ในจุดที่สำคัญที่สุด
นี่คือรายการที่สมบูรณ์และปลอดภัย
// ลบลิงค์ rsd remove_action( 'wp_head', 'rsd_link' ); // ลบแท็กตัวสร้าง WordPress remove_action( 'wp_head', 'wp_generator' ); // ลบลิงค์ฟีด RSS remove_action( 'wp_head', 'feed_links', 2 ); remove_action( 'wp_head', 'feed_links_extra', 3 ); // ลบลิงค์ไปยังไฟล์ manifest ของ Windows Live Writer remove_action( 'wp_head', 'wlwmanifest_link' ); // ลบลิงค์โพสต์ที่อยู่ติดกัน remove_action( 'wp_head', 'adjacent_posts_rel_link', 10, 0 ); remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); // ลบลิงก์สั้น WordPress สำหรับโพสต์ของคุณ remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
0.5: การปรับปรุง WordPress
1.อย่ากลัวปลั๊กอิน
ที่ Raybeam เราไม่กลัวปลั๊กอิน ปลั๊กอินเป็นวิธีที่ง่ายที่สุดในการเพิ่มฟีเจอร์ขั้นสูงให้กับ WordPress เมื่อเปรียบเทียบกับแพลตฟอร์ม CMS อื่นๆ จำนวนปลั๊กอินที่คุณใช้อาจไม่ใช่ปัญหา แต่คุณภาพของปลั๊กอินต่างหากที่เป็นปัญหา
ปลั๊กอินควรเน้นไปที่การทำสิ่งเดียวและทำได้ดีเป็นพิเศษ หลีกเลี่ยงปลั๊กอินแบบ "รวมทุกอย่าง" ที่อ้างว่าทำได้ทุกอย่าง เนื่องจากปลั๊กอินเหล่านี้มักจะทำได้ไม่ดีพอและอาจทำให้การติดตั้งของคุณยุ่งยาก
เมื่อพูดถึงประสิทธิภาพการทำงานแล้ว ไม่มีปลั๊กอินวิเศษที่จะแก้ไขปัญหาความเร็วของ WordPress ได้ในทันที คุณต้องทำความเข้าใจสาเหตุทั่วไปของการทำงานช้าลงทั้งในส่วนหน้าและในแดชบอร์ดผู้ดูแลระบบ แล้วแก้ไขทีละสาเหตุ โชคดีที่เราได้ระบุสาเหตุทั่วไปบางประการแล้ว
2. สอนปลั๊กอินของคุณบางวิธีเพื่อป้องกันไม่ให้ปลั๊กอินเติมตัวเลือกโหลดอัตโนมัติ
นี่อาจเป็นสาเหตุอันดับหนึ่งที่ทำให้แดชบอร์ดทำงานได้ไม่ดี ปลั๊กอินมีการตั้งค่าและต้องการให้โหลดเร็ว จึงทำให้ตาราง 'wp_options' เต็มไปด้วยข้อมูลและตั้งค่าให้โหลดทุกหน้า ปัญหาอาจแย่ลงได้หากปลั๊กอินที่เป็นปัญหาถูกปิดใช้งาน/ลบ แต่ยังคงทิ้งข้อมูลไว้
ปลั๊กอิน โปรแกรมทำความสะอาดฐานข้อมูลขั้นสูง ช่วยให้เรามองเห็นภาพรวมได้ดีว่ามีอะไรเกิดขึ้นกับฐานข้อมูลของเราบ้าง และมีเครื่องมือสำหรับแก้ไขด้วย ตัวเลือก แท็บนี้มีข้อมูลของปลั๊กอินแต่ละตัวและโหลดอัตโนมัติตามค่าเริ่มต้นหรือไม่ การทำความสะอาดทั่วไป ให้การควบคุมที่ปรับแต่งได้ละเอียดยิ่งขึ้น การแก้ไข และ ร่างอัตโนมัติวิธีการที่ดีกว่าการกำหนดขีดจำกัดแบบตายตัว
3. การเชื่อมโยง CSS/JS ไม่เป็นที่นิยมอีกต่อไป
ในอดีต การย่อขนาดและรวมไฟล์เป็นสิ่งสำคัญสำหรับการเพิ่มความเร็วของเว็บไซต์ โดยเฉพาะอย่างยิ่งก่อนที่เราจะมีวิธีการบีบอัดที่มีประสิทธิภาพ เช่น Brotli และ Gzip แม้ว่าการย่อขนาดจะยังคงช่วยลดขนาดไฟล์ได้ แต่ความสำคัญของการย่อขนาดก็ลดลงเมื่อมีเทคนิคการบีบอัดขั้นสูงที่ช่วยลดขนาดไฟล์ที่ระดับเว็บเซิร์ฟเวอร์มากขึ้น
สิ่งที่สำคัญจริงๆ ในตอนนี้คือวิธีการโหลดทรัพยากรบนเพจและทรัพยากรเหล่านั้นบล็อกการแสดงเนื้อหาหรือไม่ หากสคริปต์หรือสไตล์ชีตทำให้การโหลดเนื้อหาเพจล่าช้า อาจส่งผลกระทบเชิงลบต่อการรับรู้ของผู้ใช้และการจัดอันดับของเครื่องมือค้นหา ปลั๊กอินเช่น Debloat หรือ เพิ่มประสิทธิภาพอัตโนมัติ สามารถช่วยเพิ่มประสิทธิภาพสินทรัพย์ ตรวจสอบให้แน่ใจว่าองค์ประกอบที่สำคัญโหลดก่อนและเลื่อนองค์ประกอบที่ไม่สำคัญออกไป
4. การจัดการภาพเป็นเรื่องที่ซับซ้อนมาก
รูปภาพต้องมีคุณภาพสูงและรองรับการใช้งานในอนาคต ซึ่งหมายความว่ารูปภาพจะต้องได้รับการบันทึกและจัดเก็บในความละเอียดสูง เพื่อให้สามารถแสดงได้อย่างชัดเจนบนอุปกรณ์หลากหลายประเภท ตั้งแต่สมาร์ทโฟนรุ่นเก่าไปจนถึงหน้าจอ 4K อย่างไรก็ตาม รูปภาพที่มีความละเอียดสูงอาจทำให้ไฟล์มีขนาดใหญ่ ซึ่งอาจทำให้เว็บไซต์โหลดช้าลง WordPress จะสร้างสำเนารูปภาพที่อัปโหลดหลายชุดโดยอัตโนมัติในขนาดไฟล์ที่แตกต่างกัน ซึ่งหมายความว่าสามารถจัดเก็บรูปภาพเดียวกันได้หลายเวอร์ชัน
การบีบอัดแบบสูญเสียข้อมูลและไม่มีการสูญเสียข้อมูลสามารถลดขนาดไฟล์ได้อย่างมาก แต่ยังคงต้องเก็บรักษาไฟล์คุณภาพสูงต้นฉบับไว้ เนื่องจากเวอร์ชันที่บีบอัดอาจไม่เหมาะกับการใช้งานในทุกกรณี และอาจมีวิธีการบีบอัดที่ดีกว่าในอนาคต
WebP และ AVIF เป็นรูปแบบการบีบอัดที่ล้ำสมัย แต่การนำไปใช้งานนั้นมีทั้งข้อดีและข้อเสียเมื่อเทียบกับรูปแบบดั้งเดิมนั้นยังไม่ชัดเจน นอกจากนี้ เครื่องมือค้นหายังระบุว่าอาจลงโทษเว็บไซต์ที่ไม่ใช้รูปแบบสมัยใหม่เหล่านี้
คุณจะไม่สามารถจัดการทั้งหมดนี้ได้ด้วยตัวเองหากไม่มีปลั๊กอินหรือบริการภายนอก หลังจากทดสอบตัวเลือกที่มีทั้งหมดสำหรับ WordPress แล้ว เราได้ข้อสรุปว่าแม้จะไม่มีตัวเลือกที่สมบูรณ์แบบ EWWW โปรแกรมเพิ่มประสิทธิภาพภาพ ยังเป็นตัวที่ดีที่สุด
EWWW IO บีบอัดรูปภาพของคุณโดยใช้บริการ API ภายนอก โดยลดภาระการประมวลผลจากเซิร์ฟเวอร์ของคุณ ส่งมอบขนาดรูปภาพที่แน่นอนสำหรับแต่ละอุปกรณ์โดยใช้ CDN ของตัวเอง และเพื่อเพิ่มประสิทธิภาพสูงสุด จึงมอบเวอร์ชัน WebP/AVIF ของรูปภาพของคุณโดยอัตโนมัติเมื่อรองรับ เวอร์ชันพรีเมียมของปลั๊กอินนี้รวมอยู่ในปลั๊กอินของเรา Goodies บรรจุุภัณฑ์.
5. โปรแกรมสร้างเพจทั้งหมดเป็นภาระต่อประสิทธิภาพการทำงาน
อย่าเข้าใจฉันผิด โปรแกรมสร้างเพจ เช่น Gutenberg, Elementor, Bricks และ Breakdance กำลังปฏิวัติ WordPress ให้ดีขึ้น Gutenberg, ธีมบล็อก และธีม FSE มีจุดเริ่มต้นที่ไม่ค่อยดีนัก แต่ถือเป็นอนาคตของ WordPress อย่างแน่นอน
Elementor มักถูกวิจารณ์ในชุมชน WordPress แต่ความนิยมและคุณสมบัติที่ทรงพลังของมันกำลังแข่งขันกับแพลตฟอร์มอย่าง Wix, Squarespace และ Webflow ในขณะที่ยังคงฟรี, เปิดให้ใช้โค้ด, อยู่ในเซิร์ฟเวอร์ของคุณเอง และใช้งานได้ง่ายเหมือนปลั๊กอินอื่น ๆ.
อย่างไรก็ตามหากมี ธีมคลาสสิค (ที่มักจะมี ปรับแต่ง รายการเมนู) ก็เพียงพอสำหรับโครงการของคุณแล้ว แนะนำให้ใช้แทนธีมบล็อกหรือตัวสร้างเพจ และหากคุณไม่จำเป็นต้องใช้ฟังก์ชันบล็อกใดๆ เลย ให้พิจารณาปิดใช้งาน Gutenberg
มีหลายวิธีในการทำเช่นนั้นและคืนค่า Classic Editor ทั่วโลกหรือสำหรับผู้ใช้เฉพาะ แต่ทางที่ดีที่สุดคือปลั๊กอิน ปิดการใช้งาน Gutenberg.
6. WooCommerce และปลั๊กอินจะทำให้ประสิทธิภาพของคุณลดลง
การติดตั้งโซลูชันอีคอมเมิร์ซใดๆ บน WordPress ย่อมเพิ่มความซับซ้อนและส่งผลต่อประสิทธิภาพโดยรวมของโซลูชันนั้นอย่างหลีกเลี่ยงไม่ได้ WooCommerce ซึ่งเป็นปลั๊กอินยอดนิยมสำหรับการสร้างร้านค้าออนไลน์ ต้องมีการตั้งค่าเพิ่มเติมนอกเหนือจากการเปิดใช้งานครั้งแรกเพื่อตอบสนองความต้องการทางธุรกิจจริง เพื่อเชื่อมช่องว่างด้านฟังก์ชันนี้ เจ้าของร้านค้าต้องพึ่งพาปลั๊กอินและโค้ดที่กำหนดเอง ซึ่งอาจทำให้เว็บไซต์ทำงานช้าลงได้อีก
ผลกระทบต่อประสิทธิภาพนี้จะเห็นได้ชัดเจนเป็นพิเศษเมื่อร้านค้าของคุณเติบโตและมีปริมาณการเข้าชมและคำสั่งซื้อเพิ่มมากขึ้น แม้ว่าเทคนิคการเพิ่มประสิทธิภาพที่เรากล่าวถึงในบทความนี้อาจช่วยได้ แต่ถึงจุดหนึ่งที่ต้องปรับขนาดทรัพยากรเซิร์ฟเวอร์เพื่อรักษาประสิทธิภาพที่ยอมรับได้ จึงจำเป็นอย่างยิ่งที่จะต้องคำนึงถึงสถานการณ์นี้เมื่อวางแผนเพิ่มประสิทธิภาพร้านค้าออนไลน์ของคุณด้วย WooCommerce
7. ระวังตัวอยู่เสมอ
เว็บไซต์ WordPress อาจมีความซับซ้อนมากขึ้นเมื่อเวลาผ่านไป ทำให้การตรวจสอบประสิทธิภาพเป็นประจำเป็นสิ่งสำคัญ หากต้องการให้เว็บไซต์ของคุณทำงานได้อย่างราบรื่น ให้ใช้ปลั๊กอินเช่น ตรวจสอบแบบสอบถาม เพื่อตรวจสอบประสิทธิภาพของไซต์ของคุณเป็นประจำ เช่น เวลาในการโหลดหน้าและการใช้หน่วยความจำ นอกจากนี้ ให้ใช้ การแก้จุดบกพร่อง WP เพื่อตรวจสอบและแก้ไขข้อผิดพลาดหรือข้อขัดแย้ง PHP ใด ๆ
ในขณะที่ Query Monitor มุ่งเน้นไปที่การตรวจสอบประสิทธิภาพ WP Debugging มุ่งเน้นไปที่การบันทึกข้อผิดพลาดและการแก้ไขปัญหา การใช้ทั้งสองเครื่องมือนี้ให้แนวทางที่ครอบคลุมในการรักษาสุขภาพของไซต์ของคุณ
1. DNS: คลาวด์แฟลร์
ทุกอย่างเริ่มต้นด้วยการจัดการ DNS และผู้ให้บริการที่เร็วและเชื่อถือได้มากที่สุดคือ Cloudflare อย่างไม่ต้องสงสัย Cloudflare อยู่ในตำแหน่งที่เข้าถึงได้ทุกครั้ง จึงเป็นสิ่งแรกที่ผู้ใช้จะโต้ตอบเมื่อเข้าถึงไซต์ของคุณ และจะต้องมีความเร็วสูงมาก
เราใช้การตั้งค่าที่ไม่ใช่ค่าเริ่มต้นดังต่อไปนี้:
ความเร็ว (การเพิ่มประสิทธิภาพ)
- Speed Brain: เปิด
- Rocket Loader™: เปิด
- การเพิ่มประสิทธิภาพแพลตฟอร์มอัตโนมัติสำหรับ WordPress (APO): เปิด
- การเริ่มการเชื่อมต่อ 0-RTT ใหม่: เปิด
การแคช
- แคชเบราว์เซอร์ TTL: เคารพส่วนหัวที่มีอยู่
- คำแนะนำสำหรับโปรแกรมรวบรวมข้อมูล: เปิด
- การแคชแบบแบ่งชั้น: โทโพโลยีแคชแบบแบ่งชั้น
2. ฮาร์ดแวร์
คุณจะต้องมีสเปกที่ดีเพื่อใช้งาน WordPress โดยควรใช้เครื่องเดียวหรือ VPS สำหรับการติดตั้งแต่ละครั้ง เช่นเดียวกับที่เราทำที่ Raybeam บริษัทโฮสติ้งทั่วไปหรือแม้แต่ "โฮสติ้ง WordPress ที่ได้รับการจัดการ" จะรวมเว็บไซต์ของคุณเข้ากับบริษัทอื่นๆ อีกหลายร้อยแห่งบนเซิร์ฟเวอร์เดียวกันหรือในสภาพแวดล้อมแบบคอนเทนเนอร์ ซึ่งโดยปกติแล้วจะทำเพื่อลดต้นทุนและให้ปรับขนาดได้ง่าย แต่จะเปิดเว็บไซต์ของคุณให้เกิดปัญหาด้านประสิทธิภาพและความปลอดภัย
เซิร์ฟเวอร์ทั้งหมดของเราทำงานบน Contabo และมีฮาร์ดแวร์อันน่าประทับใจที่รับประกันประสิทธิภาพที่ยอดเยี่ยม:
- ซีพียู AMD EPYC ทั้งหมด
- ที่เก็บข้อมูล SSD NMVe เท่านั้น
- ศูนย์ข้อมูล 12 แห่งใน 9 ภูมิภาค โดยมีความล่าช้าขั้นต่ำ
- ปริมาณการรับส่งข้อมูล 32TB (10TB สำหรับออสเตรเลียและญี่ปุ่น)
3. เซิร์ฟเวอร์: Ubuntu + WordOps
Ubuntu 22.04 คือระบบปฏิบัติการ Linux ที่เราแนะนำให้ใช้ในการติดตั้งเริ่มต้น ระบบปฏิบัติการนี้ใช้กันอย่างแพร่หลายบนเซิร์ฟเวอร์ ได้รับการพิสูจน์แล้วว่ามีความน่าเชื่อถือสูงตลอดหลายปีที่ผ่านมา และมีชุมชนผู้ใช้ที่เข้มแข็ง
นอกจากนี้ เรายังใช้ WordOps ในการจัดการเซิร์ฟเวอร์และไซต์ WordPress ของเรา เครื่องมือนี้มาพร้อมกับค่าเริ่มต้นสำหรับประสิทธิภาพ รวมถึงเวอร์ชันที่ปรับแต่งแล้วของ MariaDB, PHP และ Nginx
การป้องกัน แลกเปลี่ยน อย่างน้อยที่สุด 2GB และจะเพิ่มตามสัดส่วนของ RAM ที่มีเพื่อป้องกันไม่ให้งานราคาแพง โดยเฉพาะจาก MySQL มาทำให้เซิร์ฟเวอร์หยุดทำงานในบางกรณี
4. แคช:
ระบบแคชของเราใช้สถาปัตยกรรมแบบแบ่งชั้น โดยที่แต่ละชั้นของแคชจะใช้การปรับแต่งเฉพาะของตัวเอง แนวทางการแบ่งชั้นนี้ช่วยให้ระบบแคชสามารถปรับปรุงประสิทธิภาพได้ทีละขั้น โดยแคชระดับสูงจะสร้างขึ้นจากความสามารถของแคชระดับล่าง:
- โอพีแคช:Zend OPcache เปิดใช้งานตามค่าเริ่มต้นตั้งแต่ PHP 5.5 เรียนรู้เพิ่มเติมว่ามันคืออะไร บทความนี้จัดทำโดย WP Rocket;
- แคชวัตถุ:เราเปิดใช้งาน Redis ตามค่าเริ่มต้นในการติดตั้งทั้งหมดโดยใช้เวอร์ชันฟรีของ ปลั๊กอิน Redis Object Cache. Wetopi มีบทความ เกี่ยวกับความคาดหวังที่สมจริงที่คุณควรมีเมื่อใช้ Redis บน WordPress
- แคชหน้า:WordOps จัดทำแคชหน้า Redis ที่สร้างด้วย Nginx เมื่อใดก็ตามที่มีการเปิดใช้งาน Redis
- แคชเบราว์เซอร์: แคชเบราว์เซอร์ที่ยอดเยี่ยมสำหรับ Nginx มาพร้อมกับ WordOps ตามค่าเริ่มต้น ซึ่งรวมถึงการบีบอัด Brotli ด้วย
- แคชขอบ:บริการแบบชำระเงิน Cloudflare APO รวมอยู่ในแผนบริการทั้งหมดเป็นส่วนหนึ่งของแพ็คเกจ Goodies ของเรา และทำหน้าที่เป็นไฮบริดระหว่างแคชเพจและเอจสำหรับ WordPress โดยสร้างสำเนาคงที่ของเพจของคุณและส่งไปยังโซนทั้งหมด โปรดทราบว่าบริการนี้ไม่ได้แทนที่แคชเบราว์เซอร์ของ Nginx ทั้งหมด แต่สามารถแก้ไขส่วนหัวได้ บทความที่ดีที่สุดเกี่ยวกับบริการนี้คือ อันนี้ให้มาโดย Brian Li.

ใส่ความเห็น