ማስተናገጃ እና አፈጻጸም
WordPressን እንዴት ፈጣን እንደምናደርግ፡ LiteSpeed Enterprise፣ LSCache እና በእያንዳንዱ ሳይት ላይ Redis
በጣም ፈጣኑ የWordPress ጥያቄ ፈጽሞ የማይሰራው ነው—የእኛ ስታክ አብዛኛዎቹን የድረ-ገጽ ጉብኝቶች PHP ወይም MySQL ከመነሳታቸው በፊት ከካሼ (cache) እንዴት እንደሚመልስ እና ለCore Web Vitals ምን ትርጉም እንዳለው እነሆ።
ፈጣኑ ጥያቄ ፈጽሞ የማይሄደው ነው።
መደበኛ የWordPress ጥያቄ ከፍተኛ ወጪ የሚጠይቅ ነው። ዌብ ሰርቨሩ ሂደቱን ለPHP ያስረክባል፣ PHP ደግሞ WordPressን ያስነሳል፣ ፕለጊኖችን ያንቀሳቅሳል፣ የMySQL ዳታቤዝን ጥቂት ደርዘን ጊዜያት ይጠይቃል፣ HTMLን ያዘጋጃል፣ እና ከዛ በኋላ ብቻ ነው ባይቶችን መልሶ የሚልከው። በበዛ የስራ ጫና ላይ በሚገኝ ድረ-ገጽ ላይ ይህ ሙሉ ሂደት ለእያንዳንዱ ጎብኚ ይከሰታል፣ እንዲሁም አብዛኛው የtime-to-first-byte ጊዜዎ የሚያልቀው እዚሁ ላይ ነው።
የእኛ መልስ ለአብዛኛዎቹ ጉብኝቶች አንዳቸውም አለመከሰታቸውን ማረጋገጥ ነው። እኛ በምናስተናግዳቸው ድረ-ገጾች ላይ — ከ100,000 በላይ የPBN ድረ-ገጾች እና ዋና የሚመሩ WordPress — አብዛኛዎቹ የፊት-ለፊት ገጽ እይታዎች PHP ሳይጠሩ ወይም ዳታቤዙን ሳይነኩ በቀጥታ ከካሽ አስቀድመው እንደተሰሩ ሙሉ ገጾች ሆነው ይቀርባሉ። የዚህ ጽሑፍ ቀሪው ክፍል ያንን እውን የሚያደርጉት ንብርብሮች እንዴት ਇਕ ላይ እንደሚገጣጠሙ እና እያንዳንዱ ቦታውን እንዴት እንደሚያገኝ የሚገልጽ ነው።
እዚህ ላይ ሊታወቅ የሚገባው ዋናው ነጥብ እነዚህ እርስዎ ከሚመርጧቸው ተወዳዳሪ መሸጎጫዎች (caches) መካከል የሚመረጡ አለመሆናቸው ነው። ሙሉ ገጽ መሸጎጫ (full-page cache)፣ የዕቃ መሸጎጫ (object cache) እና የሲዲኤን ኤጅ (CDN edge) እያንዳንዳቸው የተለየ የጥያቄ ዓይነት ይይዛሉ፣ ዋጋቸውም እርስ በእርስ በሚያስተላልፉበት መንገድ ላይ ነው።
LiteSpeed Enterprise + LSCache: የሙሉ ገጽ ንብርብር
እ kila ድህረ ገጽ በLiteSpeed Enterprise እና በሰርቨር ደረጃ ባለው LSCache ላይ ይሰራል። የፊት-መጨረሻ ምላሽ መሸጎጥ የሚችል ሲሆን፣ የድር ሰርቨሩ በLiteSpeed cache-control እና tag headers ምልክት ያደርግበታል፤ እንዲሁም LiteSpeed ቀጣዩ ጥያቄ ሲመጣ ሙሉውን ገጽ በቀጥታ ያቀርባል — ምንም የPHP ሂደት አይጀመርም፣ ምንም የMySQL ጥያቄ አይላክም። ይህ በWordPress TTFB ላይ ትልቁ እና ብቸኛው መቆጣጠሪያ ነው፣ ምክንያቱም አጠቃላይ የመተግበሪያ ማስነሻውን ከትኩስ ዱካ (hot path) ያስወግደዋል።
LSCache ከPHP ፕለጊን ይልቅ በቀጥታ በድር አገልጋዩ ውስጥ ስለሚገኝ፣ በጥያቄው ዑደት መጀመሪያ ላይ መስራት ይጀምራል እና አገልጋዩ ወዲያውኑ ሊያወጣው በሚችል መልኩ ገጾችን ይይዛል። መሸጎጫ ጠቋሚ (cache crawler) ታዋቂ ገጾችን ዝግጁ አድርጎ ይይዛል፤ ስለዚህ ማጽዳት ከተደረገ በኋላ የሚመጣው የመጀመሪያው ጎብኚ ገጹን እንደገና ለማመንጨት ጊዜ የሚወስድበት አይሆንም ይሆናል። ውጤቱም ከPHP ጀርባ ብቻ ከሚቀመጥ ተራ መሸጎጫ ጋር ሲወዳደር በጣም ዝቅተኛ እና የተረጋጋ የ TTFB መጠን ማግኘት ነው።
የራሳችን የሪፖ-ደረጃ መሸጎጫ ፕለጊን በእያንዳንዱ ድር ጣቢያ ላይ ቀድሞ ተጭኖ እና በራስ-ሰር ተዘምኖ ይመጣል፤ ይህም WordPressን ከ LSCache ጋር ወዲያውኑ በትክክል ያገናኘዋል። በ LiteSpeed ባልሆነ የኦሪጅን ሰርቨር ላይ ሙሉ-ገጽ ሔደሮችን (headers) አያወጣም እና ከመንገድ ይወጣል፤ የኦብጀክት መሸጎጫ እና የማግለያ ደንቦች ግን ስራቸውን ይቀጥላሉ — ስለዚህ የተሰደደ (ማይግሬት የተደረገ) ድር ጣቢያ በጭራሽ የተበላሸ እና በግማሽ የተዋቀረ ሁኔታ ውስጥ አይወድቅም።
ፍጥነትን ማስጠበቅ ያለ አሮጌ መረጃ: ESI እና ብልጥ የሆነ ራስ-ሰር ማፅዳት
ኃጠናው የሙሉ ገጽ መሸጎጫ ሁለት ክላሲክ የመክሸፍ መንገዶች አሉት፡ የገቡትን ተጠቃሚዎች የሌላ ሰውን ገጽ ማሳየት፣ እና መቀየር የነበረበትን ገጽ ለማንም ማሳየት። ሁለቱም የሚፈቱት ያን ያህል ባለመሸጎጥ ሳይሆን በመሸጎጫው ሽፋን ነው።
ESI (Edge Side Includes) ገጾችን እንድንመዝገብ (cache) ያስችለናል፣ ነገር ግን በቀጥታ (live) መቆየት የሚገባቸውን ክፍሎች ክፍት እናደርጋለን። በ WooCommerce መደብር ላይ የካታሎግ፣ የምርት እና የምድብ ገጾች ለፈጣን TTFB ሙሉ ገጽ በሆነ መዝገብ (cache) ይሰጣሉ፣ ESI ግን የጋሪውን ክፍል (cart fragment)፣ የሚኒ-ካታሎግ ድምር እና የመለያ ሁኔታን በእያንዳንዱ ጥያቄ መሰረት ያቀርባል። ጋሪ፣ ቼክአውት (checkout)፣ የእኔ-መለያ (my-account) እና ማንኛውም የኖንስ ወይም የክፍለ-ጊዜ (session) ገጾች በነባሪነት ተገልለዋል። ገዢዎች ሁልጊዜ የራሳቸውን ቅርጫት እና የሚሰራ ቼክአውት ይመለከታሉ፤ ሁሉም ሰው አሁንም መደብሩን ከ መዝገብ (cache) ያገኛል።
አዲስነት በዘመናዊ የራስ-ሰር ማጽጃ (smart auto-purge) ይያዛል። ይዘት፣ ምርቶች፣ ዋጋዎች ወይም ትዕዛዞች ሲቀየሩ የማጽጃ ሂደቶች (purge hooks) በራሳቸው ጊዜ ይሰራሉ፤ ስለዚህ አግባብነት ያላቸው የተሸመቁ (cached) ገጾች በሰዓት ቆጣሪ ምትክ ወዲያውኑ ይታደሳሉ። በተጨማሪም ከዳሽቦርድ ወይም ከWordPress ውስጥ በፈለጉት ጊዜ ማጽዳት ይችላሉ። በታግ ላይ የተመሰረተ ማጽዳት ማለት አንድን ፖስት ማስተካከል ያንን ፖስት እና ማህደሩን ብቻ ያጸዳል—ሙሉውን ሸመቃ (cache) አይደለም—ስለዚህ አንድ ነጠላ ማስተካከያ ሙሉውን ሳይት ከባዶ እንዲጀምር አያደርገውም።
በእያንዳንዱ ሳይት የሚገኝ የRedis ነገር መሸጎጫ፡ ሙሉ ገጽ ሊሆንልን ላለመቻለው
ሁሉም ጥያቄዎች የማይንቀሳቀሱ ሙሉ ገጾች ሊሆኑ አይችሉም። የገቡ ክፍለ-ጊዜዎች፣ WordPress አስተዳዳሪ፣ WooCommerce ሰረገላዎች፣ ፍለጋ እና ESI የሚለዋቸው ተለዋዋጭ ክፍሎች ሁሉም PHP ማስኬድ አለባቸው። ለነዚህ፣ ግቡ ከ'መተግበሪያውን መዝለል' ወደ 'መረጃ ቋቱን መዝለል' ይለወጣል።
እያንዳንዱ ድረ-ገጽ የራሱ የሆነ የተወሰነ የ Redis ኦብጀክት መሸጎጫ (cache) ያገኛል። WordPress የድገም የመረጃ ቋት ንባቦችን ውጤቶች — አማራጮችን፣ ጊዜያዊ መረጃዎችን፣ የልጥፍ እና የቃል ፍለጋዎችን፣ የ WooCommerce ምርቶችን እና የስብሰባ መረጃዎችን — በማስታወሻ (memory) ውስጥ ይሸጎጣል፤ በዚህም ምክንያት በእያንዳንዱ ጥያቄ ላይ ተመሳሳይ መጠይቅ በ MySQL ላይ እንዳይሄድ ይደረጋል። ውጤቱ ሙሉ ገጽ መሸጎጫ ሊረዳ በማይችልበት ቦታ ላይ በግልጽ ይታያል፡ ፈጣን ዳሽቦርዶች፣ ፈጣን ጋሪዎች፣ እና በትራፊክ ጊዜ እጅግ የቀነሰ የመረጃ ቋት ጭነት።
የኦብጀክት መሸጎጫ (cache) በጣቢያ ደረጃ የሚሰራ እንጂ የተጋራ አይደለም፣ ይህም ለሁለቱም አፈጻጸም እና መገለል ወሳኝ ነው። ከጣቢያ-ደረጃ የመረጃ ቋት (database) መቆጣጠሪያ ጋር ተደባልቆ፣ የአንድ ጣቢያ ከባድ ወይም ደካማ ጽሁፍ ያላቸው ጥያቄዎች ለጎረቤቶቹ የመረጃ ቋቱን እንዳያሳጡት ይከላከላል። ስለ አጠቃላይ ባለብዙ-ንብርብር ማዋቀር እንዴት እንደሚጣጣም በኛ የመሸጎጫ ባህሪ ገጽ ላይ፣ እና በtenant መገለል ስር ስላሉት ገደቦች የበለጠ ማንበብ ይችላሉ።
ጫፍ እና የታችኛው ትራንስፖርት
በኦሪጂን (origin) ላይ የሚገኝ ካሼ (Cache) አሁንም ቢሆን በኔትወርኩ በኩል ማለፍ አለበት። ሰርቨሩ ፊት ለፊት የCDN edge የሚገኝ በመሆኑ፣ ስታቲክ ሀብቶች (static assets) እና ካሼ የሚደረጉ ገጾች ለጎብኚው ቅርብ ከሆነ የሱፐርፖይንት (point of presence) የሚቀርቡ ሲሆን፣ ይህም ኦሪጂኑ በከፍተኛ ጭነት ስር እንኳን ጸጥ ብሎ እንዲቆይ ያደርገዋል። ለእኛ footprint-free ሆስቲንግ መስመር፣ ተመሳሳይ edge በበርካታ አቅራቢዎች የተዘረጋ ሁለገብ የmulti-CDN ስብስብ ሲሆን፣ ይህም ከአፈጻጸም ግብ በተጨማሪ የfootprint ግብንም ያገለግላል፤ በዋናው WordPress ላይ ደግሞ ኦሪጂኖችን ስራ ፈትተው እንዲቆዩ የሚያደርግ ፈጣን እና በጥሩ ሁኔታ የሚሰራ ንብርብር ነው።
ከሥሩ ያሉት መሠረታዊ ነገሮች አልተረሱም። ድረ-ገጾች በNVMe ማከማቻ እና በHTTP/3 የሚሰሩ በመሆናቸው፤ ካሹ የሚልካቸው ባይቶች ዘመናዊና ማልቲፕሌክስ በተደረገ ማስተላለፊያ እንዲሁም ከማንኛውም የካሽ መሳት በስተጀርባ ባለው ፈጣን ማከማቻ በኩል ይደርሳሉ። ከእነዚህ ንብርብሮች መካከል አንዱንም እንደ ተጨማሪ መግዛት አያስፈልግም፡ LiteSpeed፣ LSCache፣ ለእያንዳንዱ ድረ-ገጽ የሚሆን Redis፣ NVMe እና HTTP/3 በየእቅዱ ላይ መሠረታዊ አገልግሎቶች እንጂ ተጨማሪ የሚሸጡ ደረጃዎች አይደሉም።
Core Web Vitals የሚቀይረው በእርግጥ ምንድን ነው
ትክክለኛ መሆን ተገቢ ነው፣ ምክንያቱም ማስተናገድ (hosting) ብዙውን ጊዜ በ Core Web Vitals ላይ ከመጠን በላይ ይሸጣል። TTFB አገልጋዩ ባለቤት የሆነበት የምዕራፉ አካል ሲሆን፣ ከላይ ያለው የመሸጎጫ ቁልል (caching stack) ደግሞ ዝቅ እንዲል የሚያደርገው ነው — ከኤጅ (edge) በ HTTP/3 የሚቀርብ ሙሉ ገጽ መሸጎጫ (cached full page) TTFB ሊኖረው ከሚችለው እጅግ ዝቅተኛው መጠን ጋር ይመሳሰላል። TTFB የ Largest Contentful Paint ቀዳሚ ጫፍ በመሆኑ፣ ፈጣን ኦሪጅን (origin) ለእያንዳንዱ የታችኛው ፍሰት መለኪያ (downstream metric) በሌላ መልኩ ሊኖረው የማይችለውን የቅድሚያ ጅምር ይሰጠዋል።
ነገር ግን LCP፣ CLS እና INP በአብዛኛው የሚወሰኑት በብራውዘሩ እና በገጹራሱ ነው፡ ያልተመጠነ ዋና ምስል (hero image)፣ አቀራረብን የሚከለክሉ CSS እና JavaScript፣ ፎንቶች እና ማስታወቂያዎች ሲጫኑ የሚቀያየር የገፅ ቅርፅ፣ እና ከፕለጊኖች የሚመጡ ከባድ የዋና-ስሬድ (main-thread) ስራዎች። ምንም ያህል የሰርቨር ካሺንግ ቢኖር 2 MB የሆነን ዋና ምስል ወይም ሜጋባይቶች የሚያክሉ JavaScript የሚያቀርብን ጭብጥ (theme) ማስተካከል አይችልም። ታማኝ የሆስቲንግ አገልግሎት የሰርቨሩን ድርሻ ውጤታማ፣ ነጻ እና ወጥ ያደርገዋል፤ ከዚያ በኋላ የፊተኛውን ክፍል (front end) ቀለል አድርጎ ማቆየት የጣቢያው ሀላፊነት ነው።
ያ የሥራ ክፍፍል ጠቃሚ የአእምሮ ሞዴል ነው። ጥያቄው ወደ ብራውዘሩ በፍጥነት እንዲደርስ እና በትራፊክ ወቅትም ፈጣን ሆኖ እንዲቀጥል ዋስትና እንሰጣለን፤ እርስዎ ደግሞ የፔይሎድ መጠኑን አነስተኛ እና የተረጋጋ አድርገው ይይዛሉ። ሁለቱ የሚገናኙበት ቦታ — የካሽ ማሞቂያ (cache warm-up)፣ የኤጅ ማድረሻ (edge delivery)፣ እና ዳይናሚክ ገጾች እንዳይስተጓጎሉ ዳታቤዙ ምላሽ ሰጪ ሆኖ እንዲቀጥል ማድረግ — የእኛ ስታክ በትክክል የተስተካከለበት ቦታ ነው፣ እናም በዚህ ፕላትፎርም ላይ የሚገኝ ማኔጅድ WordPress በተመሳሳይ ድረ-ገፅ በሌላ ተራ ሆስት ላይ ከሚኖረው በላይ ፈጣን እንዲሆን የሚያደርገው እሱ ነው።
ብዙ ጊዜ የሚጠየቁ ጥያቄዎች
አሁንም እንደ WP Rocket ያለ መሸጎጫ (caching) መሰኪያ (plugin) ያስፈልገኛል?
ቁጥር። የገጽ-ሙሉ መሸጎጫ (full-page caching) በድር ሰርቨር ላይ የሚተዳደረው በ LiteSpeed's LSCache ሲሆን፣ የኛ የራድ መሸጎጫ ፕለጊን — ቀድሞ የተጫነ እና በራሱ የሚዘምን — WordPressን ከእሱ ጋር በትክክል ያገናኘዋል፣ ከጀርባውም ለእያንዳንዱ ሳይት የሚሆን Redis ኦብጀክት መሸጎጫ አለው። ሁለተኛ የገጽ-ሙሉ መሸጎጫ ፕለጊን ከላይ መደርደር ከመርዳት ይልቅ ብዙውን ጊዜ ከሰርቨር-ደረጃ መሸጎጫው ጋር ስለሚጋጭ አያስፈልግም እንዲሁም አይመከርም።
መሸጎጫ (caching) የእኔን WooCommerce ሰረገላ ወይም የገቡባቸውን ገጾች ያበላሻልን?
አይደለም። ካርት፣ ቼክአውት፣ ማይ-አካውንት እና ማንኛቸውም የኖንስ ወይም የሴሽን ገጾች በነባሪነት ከካሽ የተገለሉ ናቸው፣ እና ESI በሌላ መልኩ በካሽ በተደረጉ ገጾች ላይ የካርት ክፍልን እና ጠቅላላ ድምሮችን በቀጥታ እንዲቆዩ ያደርጋል። የሱቁ ፊት አሁንም ከካሽ የሚጫን ቢሆንም፣ ገዢዎች ሁልጊዜ የራሳቸውን ቅርጫት እና የሚሰራ ቼክአውት ያያሉ።
ሲያትሙ ወይም ሲያስተካክሉ መሸጎጫው (cache) እንዴት አዲስ ሆኖ ይቆያል?
ብልጡ ራስ-ሰር ማጽዳት በሚመለከታቸው የWordPress መቆጣጠሪያዎች (hooks) ላይ ይሰራል፤ ስለዚህ ይዘትን ማተም፣ ማስተካከል ወይም ምርትን፣ ዋጋን ወይም ትዕዛዝን መቀየር ሙሉ መሸጎጫውን (cache) ሳይሆን የተጎዱትን ገጾች እና መዝገቦቻቸውን ብቻ ያጸዳል፤ ተሳቢም (crawler) እንደገና ያሞቃቸዋል። ከ ዳሽቦርድ (dashboard) ወይም ከWordPress ውስጥ ሆነውም ሲፈልጉ ማጽዳት ይችላሉ።
Hosting ብቻውን ፍጹም የ Core Web Vitals ሊሰጠኝ ይችላል?
ይህ ለተቻለ መጠን የተሻለ TTFB ይሰጥዎታል፣ ይህም የአገልጋዩ ድርሻ እና ለLargest Contentful Paint የተደረገ ቀዳሚ እርምጃ ነው። ነገር ግን LCP፣ CLS እና INP በአብዛኛው የሚወሰኑት በገጹ ራሱ ነው—የምስል መጠኖች፣ አቀራረብን የሚያግዱ ሀብቶች፣ የገጽታ መዋቅር መረጋጋት እና ዋና-ክር (main-thread) ጃቫስክሪፕት። የእኛ ስቴክ የአገልጋዩን አስተዋጽኦ ፈጣን እና ተከታታይነት ያለው ያደርገዋል፤ የfront-end ጭነት መጠንን አነስተኛ አድርጎ ማቆየት የቀረውን ክፍተት የሚዘጋው ነው።
ተዛማጅ
ለ 14 ቀናት በነጻ ይሞክሩት
የመጀመሪያዎቹን ጣቢያዎችዎን ለአልባሳት 14 ቀናት በነፃ ይጀምሩ — ምንም ካርድ አያስፈልግም። ነባር ኔትወርክ ማዛወር ይፈልጋሉ? የመጀመሪያው ፍልሰትዎ በነጻ የሚደረግልዎት ይሆናል።
ነፃ ጅምር