CDN என்றால் என்ன? Content Delivery Network எளிய விளக்கம்
CDN (content delivery network) என்பது பல நகரங்களில் பரவியுள்ள சர்வர்களின் வலையமைப்பு; அவை உங்கள் இணையதளக் கோப்புகளின் நகல்களை வைத்திருக்கின்றன: படங்கள், scripts, stylesheets, சில நேரங்களில் முழு பக்கங்களும். யாராவது உங்கள் தளத்துக்கு வரும்போது, தொலைவில் உள்ள ஒரே சர்வருக்குப் பதிலாக அவர்களுக்கு அருகில் உள்ள இடத்திலிருந்து அவை வழங்கப்படுகின்றன. இதனால் பக்கங்கள் வேகமாக ஏற்றப்படுகின்றன, உங்கள் சொந்த சர்வரின் சுமை குறைகிறது, திடீர் போக்குவரத்து உயர்வுகளையும் தளம் தாங்குகிறது.
AI கருவிகளுடன் உருவாக்கும்போது CDN ஏன் முக்கியம்
நீங்களே ஒரு CDN-ஐ அமைக்காமலும் இருக்கலாம்; பல hosting தளங்கள் தானாகவே தளத்தின் முன்னால் ஒன்றை வைக்கின்றன. ஆனால் அதன் விளைவுகளை நீங்கள் உணர்வீர்கள்:
- வேகம். வேகமாக ஏற்றப்படும் பக்கங்கள் பார்வையாளர்களைத் தங்க வைக்கின்றன; தேடுபொறிகள் கருதும் அம்சங்களில் இதுவும் ஒன்று. உங்கள் இணையதளத்தை வேகமாக்குவது எப்படி பார்க்கவும்.
- "என் மாற்றம் ஏன் தெரியவில்லை?" ஒரு புதுப்பிப்பை வெளியிட்ட பிறகு, பழைய பதிப்பின் cache நகல் சிறிது நேரம் இருக்கக்கூடும். அதற்கான காரணம் தெரிந்தால் பல குழப்பங்கள் தவிர்க்கப்படும்.
- தனியுரிமையும் சரியான தன்மையும். CDN தவறான ஒன்றை cache செய்தால் — ஒரு பயனரின் விவரங்கள் உள்ள பக்கம் — அடுத்த பார்வையாளர் அதைப் பார்க்கலாம். எதை cache செய்யலாம், எதை செய்யக்கூடாது என்று தெரிந்தால் சரியான கேள்விகளைக் கேட்கலாம்.
ஒரு அன்றாட ஒப்புமை
ஒரு ஒரே கடையிலிருந்து நாடு முழுவதும் ரொட்டி விற்கும் bakery-ஐக் கற்பனை செய்யுங்கள். தொலைவில் உள்ள ஒவ்வொரு வாடிக்கையாளரும் அந்த ஒரே கடையிலிருந்து டெலிவரிக்காகக் காத்திருக்க வேண்டும்; பரபரப்பான நாட்களில் வரிசை மிகப் பெரியதாகிவிடும்.
CDN என்பது நாடு முழுவதும் உள்ள உள்ளூர் கடைகளில் அதே ரொட்டியை வைப்பது போன்றது. வாடிக்கையாளர்கள் அருகிலேயே வேகமாக வாங்குகிறார்கள், முதன்மை bakery அவ்வப்போது அந்தக் கடைகளுக்கு மட்டும் சரக்கு நிரப்புகிறது. ஆனால் ஒரு சிக்கல்: bakery தன் செய்முறையை மாற்றினால், அதைத் தெரிவிக்கும் வரை அல்லது பழைய சரக்கு காலாவதியாகும் வரை உள்ளூர் கடைகள் பழைய ரொட்டியையே விற்கும்.
CDN எப்படி வேலை செய்கிறது
- உங்கள் origin. உங்கள் தளம் முதன்மை சர்வரிலோ hosting தளத்திலோ இருக்கும்; அதுவே origin.
- Edge இடங்கள். CDN பல இடங்களில் சர்வர்களை இயக்குகிறது; அவை edge இடங்கள் அல்லது points of presence எனப்படும்.
- வழிநடத்தல். பார்வையாளர் ஒரு கோரிக்கை அனுப்பும்போது, DNS அல்லது பிணைய வழிநடத்தல் அவரை அருகிலுள்ள edge-க்கு அனுப்புகிறது. டொமைன்களும் DNS-உம் எப்படி வேலை செய்கின்றன பார்க்கவும்.
- Cache hit. அந்த edge-இல் கோப்பின் புதிய நகல் ஏற்கனவே இருந்தால், உடனடியாக அனுப்புகிறது.
- Cache miss. இல்லையென்றால், edge அதை உங்கள் origin-இலிருந்து பெற்று பார்வையாளருக்கு அனுப்பி, அடுத்தவருக்காக ஒரு நகலை வைத்துக்கொள்கிறது.
- காலாவதி. ஒவ்வொரு நகலும் உங்கள் சர்வர் அனுப்பும் cache headers மூலம் அமைக்கப்பட்ட ஒரு நேரம் வரை வைக்கப்படும், அல்லது அது அழிக்கப்படும் வரை.
ஒரு வேலை செய்யப்பட்ட எடுத்துக்காட்டு: படங்களுடன் ஒரு புகைப்படக்காரரின் portfolio
ஒரு புகைப்படக்காரரின் portfolio-வில் முகப்புப் பக்கம், 60 பெரிய படங்கள் கொண்ட gallery, ஒரு contact form உள்ளன. Origin ஐரோப்பாவில் உள்ளது. சிங்கப்பூரில் உள்ள ஒரு பார்வையாளர் gallery-ஐத் திறக்கிறார்.
- CDN இல்லாமல்: ஒவ்வொரு படமும் ஐரோப்பாவிலிருந்து வரும். ஒவ்வொரு கோரிக்கையும் உலகம் முழுவதும் ஒரு சுற்றுப் பயணம் எடுக்கும், அதனால் gallery மெதுவாக நிரம்பும்.
- CDN உடன்: சிங்கப்பூர் அருகில் உள்ள முதல் பார்வையாளர் அந்த edge படங்களைப் பெற்று சேமிக்கிறார். அந்தப் பகுதியில் அதன் பிறகு வரும் ஒவ்வொரு பார்வையாளருக்கும் அவை அருகிலிருந்து, மிக வேகமாக கிடைக்கும்.
இப்போது புகைப்படக்காரர் முகப்புப் பக்கத்தின் முதன்மைப் படத்தை மாற்றி மீண்டும் வெளியிடுகிறார். பார்வையாளர்கள் அதைப் பார்ப்பார்களா என்பதை இவை முடிவு செய்கின்றன:
/index.html → குறுகிய cache நேரம், அடிக்கடி சரிபார்க்கப்படும்
/assets/index-3f9a2c.js → நீண்ட நேரம் cache செய்யப்படும்
/assets/hero-8b41d0.jpg → நீண்ட நேரம் cache செய்யப்படும்
Vite உட்பட நவீன build கருவிகள் கோப்புகளுக்கு hero-8b41d0.jpg போன்ற hashed பெயர்களை கொடுக்கின்றன. ஒரு கோப்பு மாறும்போது அதன் பெயரும் மாறுகிறது; அதனால் பக்கம் எந்த cache-உம் இதுவரை பார்த்திராத புதிய கோப்பைக் கேட்கிறது. HTML பக்கம் சிறிது நேரமே cache செய்யப்படுவதால், விரைவில் அது பார்வையாளர்களைப் புதிய கோப்புகளுக்கு வழிநடத்துகிறது. நீண்ட cache-உம் புதிய புதுப்பிப்புகளும் இரண்டும் கிடைப்பதற்கான நிலையான வழி இதுதான்.
Contact form வேறுபட்டது. அதன் சமர்ப்பிப்புகள் ஒவ்வொரு முறையும் சர்வருக்குச் செல்கின்றன; அவை ஒருபோதும் cache செய்யப்படக்கூடாது.
எதை cache செய்ய வேண்டும், எதை வேண்டாம்
| பொதுவாக நீண்ட நேரம் cache செய்யலாம் | பொதுவாக குறுகிய நேரம் cache செய்யலாம் | பகிரப்பட்ட CDN-இல் cache செய்யக்கூடாது |
|---|---|---|
| படங்கள், fonts, videos | பொதுத் தளத்தின் HTML பக்கங்கள் | உள்நுழைந்த பக்கங்கள், dashboards |
| Hashed பெயர்கள் கொண்ட JavaScript மற்றும் CSS | எப்போதாவது மாறும் பொது API தரவு | தனிப்பட்ட தரவு உள்ள எதுவும் |
| அரிதாக மாறும் பதிவிறக்கக் கோப்புகள் | Form சமர்ப்பிப்புகள், பணம் செலுத்தல், எந்த POST கோரிக்கையும் |
முக்கிய சொற்கள்
| சொல் | பொருள் |
|---|---|
| Origin | உங்கள் முதன்மை சர்வர் அல்லது host; உண்மையான கோப்புகள் இருக்கும் இடம். |
| Edge / PoP | பார்வையாளர்களுக்கு அருகில் சேவை செய்யும் CDN இடம். |
| Cache hit / miss | Edge-இல் கோப்பு இருந்தது / origin-இலிருந்து பெற வேண்டியிருந்தது. |
| TTL | Time to live — ஒரு cache நகல் எவ்வளவு நேரம் வைக்கப்படும். |
| Cache-Control header | ஏதாவது cache செய்யப்படலாமா, எவ்வளவு நேரம் என்று உங்கள் சர்வர் அனுப்பும் அறிவுறுத்தல். |
| Purge / invalidate | Cache நகல்களை இப்போதே தூக்கி எறியும்படி CDN-இடம் கூறுவது. |
| Cache busting | ஒரு கோப்பு மாறும்போது அதன் பெயரையோ URL-ஐயோ மாற்றுவது, அதனால் cache-கள் புதியதைப் பெறும். |
| Latency | தூரம் மற்றும் பிணைய தாவல்களால் ஏற்படும் தாமதம். |
Browser-கள், சர்வர்கள், தரவுத்தளங்கள் என பொதுவாக caching பற்றி அறிய caching என்றால் என்ன பார்க்கவும்.
பொதுவான தவறான கருத்துகள்
- "CDN எல்லாவற்றையும் வேகமாக்கும்." அது கோப்புகளை வழங்குவதை வேகமாக்குகிறது. உங்கள் சர்வரில் மெதுவான தரவுத்தள வினவல் அல்லது மெதுவான AI அழைப்பு இன்னும் மெதுவாகவே இருக்கும்.
- "CDN hosting-ஐ மாற்றுகிறது." அது உங்கள் hosting-க்கு முன்னால் அமர்கிறது. உங்களுக்கு இன்னும் ஒரு origin தேவை.
- "தளத்தைப் புதுப்பித்தால் எல்லோரும் உடனே பார்ப்பார்கள்." பழைய நகல்கள் CDN-இலும் browser-களிலும் சிறிது நேரம் நீடிக்கலாம். சரிபார்க்க hard refresh செய்யுங்கள், hashed கோப்புப் பெயர்களைப் பயன்படுத்துங்கள்.
- "Caching எப்போதும் பாதுகாப்பானது." தனிப்பயனாக்கப்பட்ட பக்கத்தைப் பகிரப்பட்ட cache-இல் சேமிப்பது உண்மையான தனியுரிமை ஆபத்து. தனிப்பட்ட பதில்கள் cache செய்ய முடியாதவை என்று குறிக்கப்பட வேண்டும்.
- "CDN-கள் பெரிய நிறுவனங்களுக்கு மட்டுமே." பல hosts சிறிய தளங்களுக்கும் கூடுதல் முயற்சி இல்லாமல் ஒன்றைச் சேர்த்துத் தருகின்றன.
AI கட்டமைப்பாளரிடம் என்ன கேட்க வேண்டும்
- "இந்த தளத்துக்கு முன்னால் CDN உள்ளதா? அது எந்தக் கோப்புகளை cache செய்கிறது, எவ்வளவு நேரம்?"
- "கட்டப்பட்ட JavaScript, CSS மற்றும் படங்களுக்கு hashed கோப்புப் பெயர்களும் நீண்ட cache நேரமும், HTML-க்கு குறுகிய நேரமும் இருப்பதை உறுதி செய்யுங்கள்."
- "உள்நுழைந்த பக்கங்களையோ தனிப்பட்ட தரவு உள்ள API பதில்களையோ பகிரப்பட்ட cache-இல் ஒருபோதும் cache செய்யாதீர்கள்."
- "Gallery விரைவாக ஏற்றப்பட படங்களை சுருக்கி அளவு மாற்றுங்கள்."
- "ஒரு புதுப்பிப்பை வெளியிட்டேன், ஆனால் பழையது தெரிகிறது — அது browser cache-ஆ CDN-ஆ?"
CDN-உம் Mythex-உம்
Mythex-இல் வெளியிடும்போது, நிலையான front end-கள் static sites ஆக deploy செய்யப்படுகின்றன; CDN cache-கள் ஒரு புதுப்பிப்புக்குப் பிறகு சிறிது தாமதமாகலாம் என்று ஆவணங்கள் குறிப்பிடுகின்றன. மீண்டும் வெளியிட்ட பிறகும் பழைய பதிப்பு தெரிந்தால், பொது URL-ஐ hard refresh செய்யுங்கள். அதற்காக எதையும் அமைக்க வேண்டியதில்லை. நீங்கள் DNS Cloudflare-இல் உள்ள தனிப்பயன் டொமைனை இணைத்தால், Mythex HTTPS-ஐ சரியாக வழங்க அந்த record-ஐ "DNS only" என அமைக்கச் சொல்கின்றன, proxied அல்ல. வெளியிடுவது எப்படி மற்றும் தனிப்பயன் டொமைன்கள் ஆவணங்களிலும், பரந்த படத்துக்கு web hosting வழிகாட்டியிலும் பார்க்கவும்.
கேள்விகள்
எளிய சொற்களில் CDN என்றால் என்ன?
CDN (content delivery network) என்பது பல இடங்களில் உள்ள சர்வர்களின் வலையமைப்பு; அவை உங்கள் இணையதளக் கோப்புகளின் நகல்களை வைத்திருக்கின்றன. பார்வையாளர்களுக்கு முதன்மை சர்வருக்குப் பதிலாக அவர்களுக்கு அருகில் உள்ள இடத்திலிருந்து கோப்புகள் வழங்கப்படுகின்றன; அதனால் பக்கங்கள் வேகமாக ஏற்றப்படுகின்றன, உங்கள் சர்வரின் வேலையும் குறைகிறது.
இணையதளத்தைப் புதுப்பித்த பிறகும் ஏன் பழைய பதிப்பு தெரிகிறது?
பொதுவாக பழைய கோப்பின் நகல் cache-இல் இருப்பதால் — CDN-இலோ browser-இலோ அல்லது இரண்டிலுமோ. Browser பக்கத்துக்கு hard refresh உதவும்; CDN நகல்கள் தானாகக் காலாவதியாகும் அல்லது அழிக்கப்படலாம். மாற்றப்பட்ட கோப்புகளுக்குப் புதிய பெயர் கொடுப்பதன் மூலம் build கருவிகள் இதில் பெரும்பாலானவற்றைத் தவிர்க்கின்றன.
சிறிய இணையதளத்துக்கு CDN தேவையா?
நீங்கள் தேர்ந்தெடுக்காமலேயே உங்களுக்கு ஒன்று இருக்கக்கூடும்; ஏனெனில் பல hosting தளங்கள் தானாகவே தளத்தின் முன்னால் CDN வைக்கின்றன. உங்களிடம் இல்லையென்றும் உங்கள் பார்வையாளர்கள் பல நாடுகளில் இருந்தால், ஒன்றைச் சேர்ப்பது பொதுவாக பயனுள்ளது.
CDN என் செயலியின் தரவையும் உள்நுழைந்த பக்கங்களையும் cache செய்ய முடியுமா?
அனுமதிக்கப்பட்டதை எதையும் அது cache செய்ய முடியும்; அதனால்தான் அதை கவனமாக அமைக்க வேண்டும். படங்கள், scripts, styles போன்ற பொதுக் கோப்புகள் சிறந்தவை. தனிப்பட்ட அல்லது உள்நுழைந்த உள்ளடக்கத்தை பொதுவாக பகிரப்பட்ட CDN-இல் cache செய்யக்கூடாது; இல்லையெனில் ஒரு பயனர் மற்றவரின் தரவைப் பார்க்க நேரிடும்.