CDN ምንድን ነው? Content Delivery Network በቀላሉ ተብራርቷል
CDN (content delivery network) በብዙ ከተሞች ተበትነው የድረ-ገጻችሁን ፋይሎች ቅጂ የሚያስቀምጡ ሰርቨሮች አውታረ መረብ ነው፤ ምስሎች፣ ስክሪፕቶች፣ ስታይል ሉሆች፣ አንዳንዴም ሙሉ ገጾች። አንድ ሰው ድረ-ገጻችሁን ሲጎበኝ ከሩቅ ካለ አንድ ሰርቨር ሳይሆን ከእሱ ቅርብ ካለ ቦታ ይቀበላል። ይህ ገጾችን ያፋጥናል፣ ጭነቱን ከራሳችሁ ሰርቨር ላይ ያነሳል እና ድንገተኛ የጎብኚ ብዛትን ለመቋቋም ይረዳል።
ለAI ግንባታ CDN ለምን ይጠቅማል
CDN ራሳችሁ ፈጽሞ ላታዋቅሩት ትችላላችሁ፤ ብዙ የሆስቲንግ መድረኮች በድረ-ገጻችሁ ፊት በራስ-ሰር ያስቀምጡታል። ነገር ግን ተጽዕኖው ይሰማችኋል፦
- ፍጥነት። ፈጥነው የሚጫኑ ገጾች ጎብኚዎችን ያቆያሉ፤ የፍለጋ ሞተሮችም ከሚመለከቷቸው ነገሮች አንዱ ነው። ድረ-ገጻችሁን እንዴት ፈጣን ማድረግ እንደሚቻል ይመልከቱ።
- «ለውጤ ለምን አይታይም?» ዝማኔ ካተማችሁ በኋላ የአሮጌው ስሪት የተቀመጠ ቅጂ ለጊዜው ሊቆይ ይችላል። ምክንያቱን ማወቅ ብዙ ግራ መጋባትን ያስወግዳል።
- ግልነትና ትክክለኛነት። CDN የተሳሳተ ነገር ቢያስቀምጥ፣ ለምሳሌ የአንድ ተጠቃሚ ዝርዝር ያለበት ገጽ፣ ቀጣዩ ጎብኚ ሊያየው ይችላል። ምን መቀመጥ እንዳለበትና እንደሌለበት ማወቅ ትክክለኛ ጥያቄዎችን ለመጠየቅ ይረዳል።
የዕለት ተዕለት ምሳሌ
አንድ ዳቦ ቤት ዳቦውን ከአንድ ሱቅ ለመላው አገር የሚሸጥ አስቡ። እያንዳንዱ ደንበኛ ምንም ቢርቅ ከዚያ አንድ ሱቅ ማድረስ ይጠብቃል፤ በተጨናነቀ ቀን ወረፋው ግዙፍ ይሆናል።
CDN ዳቦውን በየአካባቢው ባሉ ትናንሽ ሱቆች ማስቀመጥ ነው። ደንበኞች በቅርብ ያገኙታል፤ ዋናው ዳቦ ቤት ሱቆቹን ከጊዜ ወደ ጊዜ ብቻ ይሞላል። ጥንቃቄው፦ ዳቦ ቤቱ የምግብ አዘገጃጀቱን ሲቀይር፣ ሱቆቹ አዲሱን እስኪተኩ ወይም ያለፈው ክምችት እስኪያልቅ ድረስ አሮጌውን መሸጣቸውን ይቀጥላሉ።
CDN እንዴት ይሰራል
- ኦሪጅን። ድረ-ገጻችሁ ዋናው ሰርቨራችሁ ወይም የሆስቲንግ መድረካችሁ ላይ ይኖራል፤ origin ይባላል።
- Edge ቦታዎች። CDN በብዙ ቦታዎች ሰርቨሮችን ያስኬዳል፤ edge locations ወይም points of presence ይባላሉ።
- መስመር መምራት። ጎብኚ ድረ-ገጻችሁን ሲጠይቅ DNS ወይም የአውታረ መረብ መስመር ወደ ቅርብ edge ይልከዋል። ዶሜይንና DNS እንዴት እንደሚሰሩ ይመልከቱ።
- Cache hit። ያ edge ፋይሉ ትኩስ ቅጂ ካለው ወዲያው ይልካል።
- Cache miss። ከሌለ ከኦሪጅኑ ያመጣዋል፣ ለጎብኚው ይልካል፣ ለሚቀጥለው ሰው ቅጂ ያስቀምጣል።
- ማለፊያ። እያንዳንዱ ቅጂ ለተወሰነ ጊዜ ወይም እስኪጸዳ ድረስ ይቆያል፣ ይህም ሰርቨራችሁ በሚልካቸው cache headers ይወሰናል።
የሥራ ምሳሌ፦ ፎቶ ያለው የፎቶግራፍ ፖርትፎሊዮ
የአንድ ፎቶግራፍ አንሺ ፖርትፎሊዮ መነሻ ገጽ፣ 60 ትላልቅ ምስሎች ያሉት ጋለሪና የመገናኛ ቅጽ አለው። ኦሪጅኑ አውሮፓ ነው። ከሲንጋፖር የመጣ ጎብኚ ጋለሪውን ይከፍታል።
- CDN ከሌለ፦ እያንዳንዱ ምስል ከአውሮፓ ይጓዛል። እያንዳንዱ ጥያቄ የዓለምን ግማሽ ዙር ስለሚጓዝ ጋለሪው በዝግታ ይሞላል።
- CDN ካለ፦ ከሲንጋፖር አጠገብ ያለው የመጀመሪያው ጎብኚ edge ያንን ቦታ ምስሎቹን እንዲያመጣና እንዲያስቀምጥ ያደርገዋል። በዚያ ክልል ያሉ ቀጣይ ጎብኚዎች ሁሉ ከቅርብ ቦታ፣ በጣም ፈጥነው ያገኟቸዋል።
አሁን ፎቶግራፍ አንሺው የመነሻ ገጹን ዋና ፎቶ ቀይሮ እንደገና ያትማል። ጎብኚዎች አዲሱን ያዩ እንደሆነ የሚወስነው ይህ ነው፦
/index.html → አጭር የካሺንግ ጊዜ፣ ብዙ ጊዜ ይፈተሻል
/assets/index-3f9a2c.js → ለረጅም ጊዜ ይቀመጣል
/assets/hero-8b41d0.jpg → ለረጅም ጊዜ ይቀመጣል
Vite ጨምሮ ዘመናዊ የግንባታ መሳሪያዎች ፋይሎችን hashed names ይሰጣሉ፤ ለምሳሌ hero-8b41d0.jpg። ፋይል ሲቀየር ስሙም ይቀየራል፤ ስለዚህ ገጹ ማንም ካሺ ያላየው አዲስ ፋይል ይጠይቃል። የHTML ገጹ ራሱ ለአጭር ጊዜ ብቻ ይቀመጣል፤ ስለዚህ ብዙም ሳይቆይ ጎብኚዎችን ወደ አዲሶቹ ፋይሎች ይጠቁማል። ይህ ረጅም ካሺንግና ትኩስ ዝማኔዎችን በአንድ ጊዜ ለማግኘት መደበኛው መንገድ ነው።
የመገናኛ ቅጹ የተለየ ነው። ማስገባቶቹ በየጊዜው ወደ ሰርቨሩ ይሄዳሉ፤ ፈጽሞ መቀመጥ የለባቸውም።
ምን ማስቀመጥና ምን አለማስቀመጥ
| ብዙ ጊዜ ለረጅም ጊዜ ማስቀመጥ | ብዙ ጊዜ ለአጭር ጊዜ ማስቀመጥ | በተጋራ CDN ውስጥ አለማስቀመጥ |
|---|---|---|
| ምስሎች፣ ፎንቶች፣ ቪዲዮዎች | የይፋዊ ድረ-ገጽ HTML ገጾች | በመግባት የሚታዩ ገጾች፣ ዳሽቦርዶች |
| JavaScript እና CSS በhashed ስሞች | አልፎ አልፎ የሚቀየር ይፋዊ API ዳታ | ማንኛውም የግል ዳታ |
| ብዙ ጊዜ የማይቀየሩ ሊወርዱ የሚችሉ ፋይሎች | የቅጽ ማስገባቶች፣ ክፍያዎች፣ ማንኛውም POST ጥያቄ |
ቁልፍ ቃላት
| ቃል | ትርጉም |
|---|---|
| Origin | ዋናው ሰርቨራችሁ ወይም ሆስታችሁ፣ እውነተኛ ፋይሎቹ የሚኖሩበት። |
| Edge / PoP | ጎብኚዎችን በቅርብ የሚያገለግል የCDN ቦታ። |
| Cache hit / miss | edge ፋይሉ ነበረው / ከኦሪጅን ማምጣት ነበረበት። |
| TTL | Time to live፣ የተቀመጠ ቅጂ ምን ያህል እንደሚቆይ። |
| Cache-Control header | ሰርቨራችሁ የሚልከው መመሪያ ነገሩ ሊቀመጥ እንደሚችልና ለምን ያህል ጊዜ። |
| Purge / invalidate | CDN የተቀመጡ ቅጂዎችን አሁኑኑ እንዲጥል መንገር። |
| Cache busting | ፋይል ሲቀየር ስሙን ወይም URLውን መቀየር፣ ካሺዎች አዲሱን እንዲያመጡ። |
| Latency | በርቀትና በአውታረ መረብ ዝላይዎች የሚመጣ መዘግየት። |
በአሳሽ፣ በሰርቨርና በዳታቤዝ ስላለው ካሺንግ በአጠቃላይ ካሺንግ ምንድን ነው ይመልከቱ።
የተለመዱ ግንዛቤዎች
- «CDN ሁሉንም ነገር ያፈጥናል።» የፋይል ማድረስን ያፋጥናል። በሰርቨራችሁ ላይ ያለ ዘገምተኛ ዳታቤዝ ጥያቄ ወይም ዘገምተኛ የAI ጥሪ አሁንም ዘገምተኛ ነው።
- «CDN ሆስቲንግን ይተካል።» ከሆስቲንግ ፊት ይቀመጣል። አሁንም ኦሪጅን ያስፈልጋችኋል።
- «ድረ-ገጹን ካዘመንኩ ሁሉም ወዲያው ያየዋል።» አሮጌ ቅጂዎች በCDNና በብራውዘሮች ለጊዜው ሊቆዩ ይችላሉ። ለመፈተሽ ሃርድ ሪፍሬሽ አድርጉ፣ እና hashed ፋይል ስሞችን ተጠቀሙ።
- «ካሺንግ ሁልጊዜ ደህንነቱ የተጠበቀ ነው።» ለግል የተበጀ ገጽ በተጋራ ካሺ ውስጥ ማስቀመጥ እውነተኛ የግላዊነት አደጋ ነው። የግል ምላሾች እንዳይቀመጡ ምልክት መደረግ አለባቸው።
- «CDN ለትልቅ ኩባንያዎች ብቻ ነው።» ብዙ ሆስቶች ለትናንሽ ድረ-ገጾች ጥረት ሳይጠይቁ አንድ ያካትታሉ።
ከAI መገንቢያችሁ ምን ብላችሁ ጠይቁ
- «በዚህ ድረ-ገጽ ፊት CDN አለ? የትኞቹን ፋይሎች ያስቀምጣል፣ ለምን ያህል ጊዜስ?»
- «የተገነቡ JavaScript፣ CSS እና ምስሎች hashed ስሞችና ረጅም የካሺ ጊዜ፣ HTML ደግሞ አጭር ጊዜ እንዲኖራቸው አድርግ።»
- «በመግባት የሚታዩ ገጾችን ወይም የግል ዳታ ያላቸውን API ምላሾች በተጋራ ካሺ ውስጥ አታስቀምጥ።»
- «ጋለሪው ፈጥኖ እንዲጫን ምስሎችን ጨምቅና መጠናቸውን አስተካክል።»
- «ዝማኔ አትሜ አሁንም አሮጌውን አያለሁ፤ የብራውዘር ካሺ ነው ወይስ CDN?»
CDN እና Mythex
Mythex ላይ ስታትሙ፣ ስታቲክ የፊት-ጫፎች እንደ ስታቲክ ጣቢያዎች ይሰማራሉ፤ ሰነዶቹ እንደሚያመለክቱት የCDN ካሺዎች ከዝማኔ በኋላ ለአጭር ጊዜ ሊዘገዩ ይችላሉ። ዝማኔ ካተማችሁ በኋላ አሮጌው ከታየ የይፋዊውን URL ሃርድ ሪፍሬሽ አድርጉ። ለዚህ የሚያስፈልግ ቅንብር የለም። የራስ ዶሜይን በCloudflare DNS ላይ ካገናኛችሁ፣ ሰነዶቹ Mythex HTTPS በትክክል እንዲያወጣ መዝገቡን «DNS only» እንጂ proxied እንዳይሆን ያዘጋጁ ይላሉ። ዝርዝሩ በሰነዶቹ እንዴት ማተም እንደሚቻል እና ብጁ ዶሜይኖች ውስጥ፣ እና ሰፊውን ስዕል በየድር ሆስቲንግ መመሪያችን ውስጥ ይገኛል።
ጥያቄዎች
CDN በቀላል አገላለጽ ምንድን ነው?
CDN (content delivery network) የድረ-ገጻችሁን ፋይሎች ቅጂ በብዙ ቦታዎች ያሉ ሰርቨሮች የሚያስቀምጡበት አውታረ መረብ ነው። ጎብኚዎች ከዋናው ሰርቨራችሁ ሳይሆን ከእነሱ ቅርብ ካለ ቦታ ይቀበላሉ፤ ስለዚህ ገጾች ፈጥነው ይጫናሉ፣ ዋናው ሰርቨራችሁም ያነሰ ይሰራል።
ድረ-ገጼን ካዘመንኩ በኋላ አሁንም አሮጌውን ለምን አያለሁ?
ብዙውን ጊዜ የአሮጌው ፋይል ቅጂ ተቀምጦ ስለሚቆይ ነው፤ በCDN ውስጥ፣ በብራውዘር ውስጥ ወይም በሁለቱም። የብራውዘሩን ጎን በሃርድ ሪፍሬሽ ማስተካከል ይቻላል፤ የCDN ቅጂዎች ግን በራሳቸው ያልቃሉ ወይም ሊጸዱ ይችላሉ። የግንባታ መሳሪያዎች ለተቀየሩ ፋይሎች አዲስ ስም በመስጠት ይህን አብዛኛውን ጊዜ ያስወግዳሉ።
ለትንሽ ድረ-ገጽ CDN ያስፈልገኛል?
ሳትመርጡት ብዙ ጊዜ አለ፤ ብዙ የሆስቲንግ መድረኮች CDN ከድረ-ገጾች ፊት በራስ-ሰር ያስቀምጣሉ። የእናንተ የሌለው ከሆነ እና ጎብኚዎቻችሁ በተለያዩ አገሮች የተበተኑ ከሆነ መጨመሩ ብዙውን ጊዜ ጠቃሚ ነው።
CDN የአፑን ዳታና በመግባት የሚታዩ ገጾችን ሊያስቀምጥ ይችላል?
የተፈቀደለትን ማንኛውንም ነገር ሊያስቀምጥ ይችላል፤ ስለዚህ በጥንቃቄ መዋቀር አለበት። እንደ ምስሎች፣ ስክሪፕቶችና ስታይሎች ያሉ ይፋዊ ፋይሎች ምርጥ ናቸው። የግል ወይም በመግባት የሚታዩ ይዘቶች በተለምዶ በተጋራ CDN ውስጥ መቀመጥ የለባቸውም፤ አለዚያ አንድ ተጠቃሚ የሌላውን ዳታ ሊያይ ይችላል።