ผู้เขียน หัวข้อ: ทำระบบแคชสำหรับเวิร์ดเพลสด้วย Hyper Cache  (อ่าน 1587 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ smf

  • [color=green][i]"ถ้าคุณไม่สามารถอธิบายอย่างง่ายๆ ให้คนอื่นเข้าใจได้แล้วล่ะก็ แสดงว่าคุณยังเข้าใจมันไม่ดีพอ"[/i][/color]
  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1,368
  • พอยท์: 5
    • ดูรายละเอียด
    • pordoo.com
    • อีเมล์
การทำเว็บเพื่อให้รองรับคนเข้าที่มากๆ และนิ่งไม่ล่มบ่อย ซึ่ง cms ส่วนมากนั้นจะมี plugin เสริมมาเพื่อระบบแคชอย่างแน่นอน วันนี้ขอยกตัวอย่างระบบแคชอย่าง Hyper cache นะครับ

 ทำไมผมถึงแนะนำให้เลือกใช้งาน Hyper cache เพราะเป็นปลั๊กอินที่มีขนาดเล็ก แต่ประสิทธิภาพเหลือหลาย
 เนื่องด้วยระบบแคชนั้น มาทำให้เว็บไซต์นั้นเร็วขึ้น ฉะนั้นแล้วตัวมันเองนั้นจำเป็นต้องเบาสุดๆ เหมือนกัน
ต่างจากตัวอื่นๆ ที่เคยใช้มาก่อนหน้านี้เช่น
 wp super cache
 W3 Total Cache
 หรือ
 Quick Cache (Speed Without Compromise)

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

แต่ที่น่าแปลกคือ Hyper cache ได้รับความไว้ใจไม่น้อยเลยทีเดียว ในปัจจุบันนี้ ซึ่งเมื่อก่อนนั้นแน่นอนว่ามันสู้พวก
 wp super cache
 W3 Total Cache
 ไม่ได้แน่ๆ เพราะ option ก็สู้ไม่ได้ แต่เดี๋ยวนี้ พัฒนามาจนเป็นที่ยอมรับของเว็บไซต์ดังๆ หลายแห่งของโลกเลยทีเดียว

จากที่เคยลอง wp super cache ก็ไม่ไหวมาเปลี่ยนเป็น W3 Total Cache ก็ดีขึ้นนิดหน่อยก็ได้เปลี่ยนอีก
 สุดท้าย ท้ายสุด ขอลองอีกตัว Hyper cache จากนั้นมากว่า 10 เว็บทั้งหมดที่มีหันมาใช้ Hyper cache อย่างเดียวครับ และไม่เปลี่ยนใจอีกแล้วแน่นอน


ที่มา: http://www.blogger.in.th/it/400.html



สาเหตุที่ทำให้ WordPress บล็อกโหลดช้า
       ซึ่งอาจจะเกิดจากปัญหาไฟล์ของ บล็อก “WordPress” นั้ันกินทรัพยากรของโฮสติ้งมากเกินไป เกิดจากการทำงานของ WordPress ที่ต้องไปดึงข้อมูลจากในดาต้าเบสที่เก็บข้อมูลการมีจำนวนคนเข้าเว็บไซต์มาก เกินไป “bandwidth limit exceeded”


 หนทางแก้ไขปัญหา “WordPress”        โหลดช้าด้วยการทำ WP Caching WP Caching คือการที่เราสร้างพื้นที่เก็บไฟล์ข้อมูลชั่วคราว (Cach Folder) ในรูปแบบของไฟล์ เอกสาร .html ซึ่งแทนที่ บทความ หรือรูปภาพ ที่มีการใช้งานบ่อยๆให้นำมาใช้งานได้ทันทีโดยที่ไม่ต้องไปดึงข้อมูลที่อยู่ ในดาต้าเบสใน Server ออกมาใช้งาน ซึ่งช่วยทำให้ WordPress บล็อก ทำงานได้เร็วขึ้น โดยที่ Server ของคุณไม่ต้องทำงานหนักจนทำให้ Server ล้ม และที่สำคัญช่วยแบ่งภาระของ CPU และเป็นการเพิ่มประสิทธิภาพให้กับบล็อก WordPress (wordpress optimization)


 ขั้นตอนในการทำ WordPress Caching ด้วยปลั๊กอิน Hyper Cache
       1. ติดตั้งปลั๊กอิน ชื่อ Hyper Cache รุ่น 2.9.0.1 เข้าไปใน WordPress บล็อกของคุณ

       2. Activate ปลั๊กอิน แล้วไปที่หน้าตั้งค่าปลั๊กอิน

       3. ที่หน้า Hyper Cache Setting คลิก Enable เพื่อใช้งาน

       4. ใส่โค้ดย่อของปลั๊กอิน Hyper Cache ที่ไฟล์ wp-config.php

       5. คลิก Update เพื่อเซฟข้อมูล

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


ที่มา: อนุสรณ์ เมืองศรี Happy Life Coach at BlogPanya
http://blog.sogoodweb.com/Article/Detail/10935/%E0%B9%81%E0%B8%81%E0%B9%89%E0%B8%9B%E0%B8%B1%E0%B8%8D%E0%B8%AB%E0%B8%B2-WordPress-%E0%B8%9A%E0%B8%A5%E0%B9%87%E0%B8%AD%E0%B8%81%E0%B9%82%E0%B8%AB%E0%B8%A5%E0%B8%94%E0%B8%8A%E0%B9%89%E0%B8%B2%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%97%E0%B8%B3-WP-Caching




ปัญหา WP กิน Ram เยอะ ตอนนี้มีทางออกแล้ว

เราใช้ Ram 2 กิ๊ก ใช้ wp เป็นสคริป คนเข้า 15K+ ออนไลน์พร้อมกันที่ 300 แต่ซัดแรมไปหมดเกลี้ยง VPS ต้องทำการ
รีสตาท์ตัวเองตลอด พอแรมหมดก็รี แบบนี้ไปเรื่อยๆ โหลดก็หนักมาก

ลองเอาของเราไปเปรียบกันของเพื่อนที่ใช้ vps แพนเดียวกัน ทำเว็บแนวเดียวกันเกือบทุกอย่าง ได้ดังนี้
ของเขาคนเข้า 50K เข้ายังอยู่ได้สบายๆ
ของเรา 15K เราเดี้ยงเลย

แรมเท่ากัน สองกิ๊ก
เขาใช้ไปสูงสุดที่ 800 เมก
เราแตะไปถึง 3 กิ๊ก

เขาใช้ สคริปของเขาเอง
เราใช้ wp

โหลดของเขาอยู่ 0.7
เราล่อไป 42.4 <<<<< โหดมาก แตกต่างกันอย่างเห็นได้ชัด

หลัง จากที่ได้ตั้งคำถามไป ก็เลยมีหมอใจดีได้ล่างในนี้แหละ เข้ามาช่วยน้อง VPS หนูให้กลับมามีชีวิตอีกครั้ง และก็เป็นปกติเหมือนที่มันควรจะเป็น คือ ณ ปัจจุบัน แรม 2 กิ๊ก ยังพออยู่ได้ ไม่ซัดจนเกลี้ยง โหลดกลับมาที่ 1-2.0 คนเข้า 20K+ ออนไลน์ เกือบ 1000 ตอนนี้ชิวมาก ไม่มีปัญหา

จากสาเหตุ ข้างต้นที่พบบ่อยเลยนะคะ คือมันจะเป็นที่แคช ของหน้า Page เราค่ะ ส่วนสาเหตุรองๆ ก็จะเกิดจากตัวของ Host เองค่ะ ซึ่งสำหรับตัวเราเอง แก้ไขปัญหาเบื้องต้นที่การ แคช Page เ่ท่านั้น ส่วนอื่นๆ เช่นพวก Host Vps ไม่เคยได้แก้ไข เพราะทำแค่ตัวแคชไฟล์ ก็พออยู่ได้น่ะค่ะ แม้ว่า Host หรือ Vps เหล่านั้นจะเน่าและเต่าก็ตาม 555

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

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

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

เอาล่ะ คือมันก็ไม่มีอะไรมาก ติดตั้ง ปักอิน Hyper Cache ตามปกติน่ะค่ะ ติดตั้งเสร็จให้ไปตั้งค่าประมาณนี้

Cached pages timeout : ใส่เลขไปเยอะๆ ของเราใส่ "43200" ความหมายของมันคือ เมื่อครบ 43200 (30 วัน) แล้ว ระบบจะเคลียแคชเองโดยอัตโนมัต และเพื่อให้ตัวปักอินมันทำงานได้สมบูรณ์แบบ ก็เลยใส่ 43200 เพื่อไม่ให้มันทำงานหนัก ถ้าเราใส่น้อยๆ มันก็ต้องคอยเคลียตัวเองบ่อยๆ หนักเข้าไปอีก ><

Cache invalidation mode : ให้เลือก Nothing เลือกแบบนี้จะทำหน้าที่แทน DB Cache Reloaded Fix ได้เลยค่ะ มันหมายถึง เวลาที่มีสมาชิกเข้าเว็บเรา ในหน้าไหนๆ ปักอินมันจะทำการแคช Page นั้นๆ ให้ทันที และจะไม่มีทางลบการแคชเด็ดขาด จนกว่าเราจะไปเคลียแคชเองมันถึงจะลบ คือเมื่อโพทย์อะไรไปเสร็จ ก็ต้องไปกดเคลียแคชเองน่ะค่ะ ทำแบบนี้เหมือนยุ่งยาก แต่อยากจะบอกว่า ลดแรมไปเยอะเลยนา ^ ^


ลองทำดูและดูความแตกต่าง เราพูดไปดูเหมือนจะ งงๆ ส่วน ส่วนอื่นๆ ก็ลองศึกษาดูน่ะค่ะ

อีก นิดนึงสำคัญมาก ลองเชคๆ ดูด้วยว่าปักอินมันแคชให้เราจริงหรือเปล่า โดยทำการเข้าบาวเซอร์อีกตัวหนึ่ง และลองกดคลิก Page นู้น Page นี้ไปเรื่อยๆ จากนั้น ให้มาที่หน้าตั้งค่าปักอิน และสังเกตุในส่วนของ Files in cache (valid and expired) ว่ามีตัวเลขขึ้นหรือไม่

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

ติดปัญหาอะไรถามได้ค่ะ
ให้เครดิตพี่นาว ยูเซอ "dj mixkajay" นิดนึงค่ะ แห่ะๆ

อีกนิดนึง

หาก จะให้ Hyper Cache ทำงานอัตโนมัติก็สามารถเลือกในส่วนของ Cache invalidation mode : ให้เป็น Only modified post ก็ได้ มันจะทำการ clear cache อัตโนมัติ เฉพาะโพสที่มีการแก้ไข

หรือจะเลือกเป็น All cache pages ก็ได้ค่ะ ปักอินจะทำการ clear cache อัตโนมัติ เมื่อ page บางเพจ มีการเปลี่ยนแปลง

แต่โดยส่วนตัว ย้ำสักนิดว่าโดยส่วนตัวนะคะ แห่ะๆ

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

จุดประสงค์ของการให้เลือก Nothing เพราะไม่อยากให้มันทำงานหนักนั้นเองค่ะ


เป็นที่การปรับแต่ง apache ไม่ดีพอมัง
ลองไปขอ config apache กับ my.cnf มาจากเพื่อนที่เขาเข้าได้ 50k สิ




ที่มา: ซากุระไฮเปอร์ http://www.thaiseoboard.com/index.php?topic=197788.0
« แก้ไขครั้งสุดท้าย: 3 ตุลาคม 2016, 15:36:46 โดย smf »