CDN શું છે? Content Delivery Networks સરળ શબ્દોમાં
CDN (content delivery network) એ ઘણા શહેરોમાં ફેલાયેલા સર્વરોનું નેટવર્ક છે, જે તમારી વેબસાઇટની ફાઇલોની નકલો રાખે છે — images, scripts, stylesheets, ક્યારેક આખા પેજ પણ. જ્યારે કોઈ તમારી સાઇટની મુલાકાત લે છે, ત્યારે તેમને દૂરના એક સર્વરને બદલે તેમની નજીકના સ્થળેથી સેવા મળે છે. તેનાથી પેજ ઝડપથી લોડ થાય છે, તમારા પોતાના સર્વર પરનો ભાર ઓછો થાય છે, અને ટ્રાફિકમાં અચાનક વધારો થાય ત્યારે સાઇટ ટકી રહે છે.
AI સાથે બનાવતી વખતે CDN શા માટે મહત્વનું છે
તમે કદાચ ક્યારેય જાતે CDN સેટ ન કરો — ઘણા hosting platforms આપમેળે તમારી સાઇટ આગળ એક મૂકે છે. પરંતુ તેની અસર તમને અનુભવાશે:
- ઝડપ. ઝડપથી લોડ થતા પેજ મુલાકાતીઓને રોકી રાખે છે અને સર્ચ એન્જિન જે બાબતો ધ્યાનમાં લે છે તેમાંની એક છે. તમારી વેબસાઇટ કેવી રીતે ઝડપી બનાવવી જુઓ.
- "મારો ફેરફાર કેમ દેખાતો નથી?" તમે અપડેટ પ્રકાશિત કર્યા પછી, જૂના વર્ઝનની cache થયેલી નકલ થોડા સમય માટે રહી શકે છે. તેનું કારણ જાણવાથી ઘણી મૂંઝવણ બચે છે.
- ગોપનીયતા અને સાચાપણું. જો CDN ખોટી વસ્તુ cache કરે — એક વપરાશકર્તાની વિગતોવાળું પેજ — તો પછીનો મુલાકાતી તે જોઈ શકે છે. શું cache થવું જોઈએ અને શું ન થવું જોઈએ તે જાણવાથી તમે સાચા પ્રશ્નો પૂછી શકો છો.
રોજિંદો ઉદાહરણ
કલ્પના કરો કે એક બેકરી પોતાની બ્રેડ એક જ દુકાનેથી આખા દેશમાં વેચે છે. દરેક ગ્રાહકને, ગમે તેટલે દૂર હોય, તે એક જ દુકાનેથી ડિલિવરીની રાહ જોવી પડે છે — અને વ્યસ્ત દિવસે લાઇન ખૂબ લાંબી થાય છે.
CDN એટલે દેશભરની સ્થાનિક કરિયાણાની દુકાનોમાં એ જ બ્રેડ રાખવી. ગ્રાહકો નજીકથી, ઝડપથી તે લઈ લે છે, અને મુખ્ય બેકરીએ ક્યારેક ક્યારેક જ દુકાનોને ફરી ભરવાની હોય છે. મુશ્કેલી એ છે: જ્યારે બેકરી રેસિપી બદલે, ત્યારે દુકાનો તેમને બદલવાનું કહેવામાં આવે અથવા જૂનો સ્ટોક સમાપ્ત થાય ત્યાં સુધી જૂની બ્રેડ વેચતી રહે છે.
CDN કેવી રીતે કામ કરે છે
- તમારો origin. તમારી સાઇટ તમારા મુખ્ય સર્વર અથવા hosting platform પર રહે છે — જેને origin કહેવાય છે.
- Edge locations. CDN ઘણી જગ્યાએ સર્વર ચલાવે છે, જેને edge locations અથવા points of presence કહેવાય છે.
- Routing. જ્યારે મુલાકાતી તમારી સાઇટની વિનંતી કરે, ત્યારે DNS અથવા નેટવર્ક routing તેમને નજીકના edge પર મોકલે છે. domains અને DNS કેવી રીતે કામ કરે છે જુઓ.
- Cache hit. જો તે edge પાસે ફાઇલની તાજી નકલ હોય, તો તે તરત મોકલે છે.
- Cache miss. જો ન હોય, તો edge તેને તમારા origin પરથી લાવે છે, મુલાકાતીને મોકલે છે, અને આગલી વ્યક્તિ માટે નકલ રાખે છે.
- Expiry. દરેક નકલ નિશ્ચિત સમય સુધી રાખવામાં આવે છે, જે તમારા સર્વર મોકલે તે cache headers દ્વારા નિયંત્રિત થાય છે, અથવા તે સાફ થાય ત્યાં સુધી.
એક કામ કરેલું ઉદાહરણ: ફોટા સાથેની portfolio સાઇટ
એક ફોટોગ્રાફરની portfolio સાઇટ પર હોમ પેજ, 60 મોટા images સાથેની gallery અને એક contact form છે. Origin યુરોપમાં છે. સિંગાપોરનો એક મુલાકાતી gallery ખોલે છે.
- CDN વિના: દરેક image યુરોપથી આવે છે. દરેક વિનંતી દુનિયા આખી પાર કરીને જાય છે, એટલે gallery ધીમે ધીમે ભરાય છે.
- CDN સાથે: સિંગાપોર નજીકનો પહેલો મુલાકાતી edge ને images લાવીને સાચવવાનું કારણ બને છે. તે પ્રદેશના દરેક પછીના મુલાકાતીને તે નજીકથી, ઘણું ઝડપથી મળે છે.
હવે ફોટોગ્રાફર હોમ પેજનો hero ફોટો બદલે છે અને ફરીથી પ્રકાશિત કરે છે. મુલાકાતીઓ તેને જોશે કે નહીં તે નક્કી કરે છે:
/index.html → ટૂંકો cache સમય, વારંવાર તપાસાય છે
/assets/index-3f9a2c.js → લાંબા સમય સુધી cache
/assets/hero-8b41d0.jpg → લાંબા સમય સુધી cache
Vite સહિતના આધુનિક build tools ફાઇલોને hashed names આપે છે, જેમ કે hero-8b41d0.jpg. જ્યારે ફાઇલ બદલાય છે, ત્યારે તેનું નામ બદલાય છે, એટલે પેજ એક નવી ફાઇલ માંગે છે જે કોઈ cache એ પહેલાં જોઈ નથી. HTML પેજ પોતે માત્ર થોડા સમય માટે cache થાય છે, એટલે તે જલદી મુલાકાતીઓને નવી ફાઇલો તરફ લઈ જાય છે. લાંબો cache અને તાજા અપડેટ બંને મેળવવાની આ પ્રમાણભૂત રીત છે.
Contact form અલગ છે. તેના submissions દર વખતે સર્વર પર જાય છે; તે ક્યારેય cache ન થવા જોઈએ.
શું cache કરવું અને શું નહીં
| સામાન્ય રીતે લાંબો cache | સામાન્ય રીતે ટૂંકો cache | શેર થતા CDN માં cache ન કરવું |
|---|---|---|
| Images, fonts, videos | જાહેર સાઇટના HTML પેજ | લૉગ ઇન થયેલા પેજ, dashboards |
| hashed નામવાળા JavaScript અને CSS | ક્યારેક બદલાતો જાહેર API ડેટા | વ્યક્તિગત ડેટા ધરાવતું કંઈપણ |
| ભાગ્યે જ બદલાતી ડાઉનલોડ ફાઇલો | Form submissions, payments, કોઈપણ POST વિનંતી |
મુખ્ય શબ્દો
| શબ્દ | અર્થ |
|---|---|
| Origin | તમારો મુખ્ય સર્વર અથવા host, જ્યાં મૂળ ફાઇલો રહે છે. |
| Edge / PoP | CDN નું સ્થળ જે મુલાકાતીઓને નજીકથી સેવા આપે છે. |
| Cache hit / miss | Edge પાસે ફાઇલ હતી / તેને origin પરથી લાવવી પડી. |
| TTL | Time to live — cache થયેલી નકલ કેટલો સમય રાખવામાં આવે છે. |
| Cache-Control header | તમારો સર્વર જે સૂચના મોકલે છે કે કંઈક cache થઈ શકે કે નહીં અને કેટલા સમય માટે. |
| Purge / invalidate | CDN ને હમણાં જ cache થયેલી નકલો ફેંકી દેવાનું કહેવું. |
| Cache busting | ફાઇલ બદલાય ત્યારે તેનું નામ અથવા URL બદલવું, જેથી caches નવી ફાઇલ લાવે. |
| Latency | અંતર અને નેટવર્ક hops ને કારણે થતો વિલંબ. |
સામાન્ય રીતે caching — બ્રાઉઝર, સર્વર અને ડેટાબેઝમાં — વિશે જાણવા માટે caching શું છે જુઓ.
સામાન્ય ગેરસમજણો
- "CDN બધું ઝડપી બનાવે છે." તે ફાઇલો પહોંચાડવાની ઝડપ વધારે છે. સર્વર પરની ધીમી database query અથવા ધીમો AI કૉલ હજી પણ ધીમો જ રહે છે.
- "CDN hosting ને બદલે છે." તે તમારા hosting ની આગળ બેસે છે. તમારે હજી origin જોઈએ.
- "મેં સાઇટ અપડેટ કરી, એટલે બધાને તરત દેખાય." જૂની નકલો CDN અને બ્રાઉઝરમાં થોડા સમય માટે રહી શકે છે. ચકાસવા માટે hard-refresh કરો, અને hashed ફાઇલ નામો વાપરો.
- "Caching હંમેશા સુરક્ષિત છે." શેર થતી cache માં વ્યક્તિગત પેજ cache કરવું ગોપનીયતાનું વાસ્તવિક જોખમ છે. ખાનગી responses ને cacheable ન હોય તેમ ચિહ્નિત કરવા જોઈએ.
- "CDN માત્ર મોટી કંપનીઓ માટે છે." ઘણા hosts નાની સાઇટો માટે વધારાના પ્રયત્ન વગર એક સમાવી લે છે.
તમારા AI બિલ્ડરને શું પૂછવું
- "આ સાઇટની આગળ CDN છે? તે કઈ ફાઇલો cache કરે છે, અને કેટલા સમય માટે?"
- "ખાતરી કરો કે બિલ્ટ JavaScript, CSS અને images ના hashed ફાઇલ નામો અને લાંબા cache સમય છે, અને HTML નો સમય ટૂંકો છે."
- "શેર થતી cache માં લૉગ ઇન થયેલા પેજ અથવા વ્યક્તિગત ડેટાવાળા API responses ક્યારેય cache ન કરો."
- "Gallery ઝડપથી લોડ થાય તે માટે images સંકુચિત કરો અને તેમનું કદ બદલો."
- "મેં અપડેટ પ્રકાશિત કર્યું પણ હજી જૂનું વર્ઝન દેખાય છે — તે બ્રાઉઝર cache છે કે CDN?"
CDN અને Mythex
Mythex પર પ્રકાશિત કરો ત્યારે, static front ends static sites તરીકે deploy થાય છે, અને દસ્તાવેજો નોંધે છે કે અપડેટ પછી CDN caches થોડા સમય માટે પાછળ રહી શકે છે: ફરીથી પ્રકાશિત કર્યા પછી પણ જૂનું વર્ઝન દેખાય તો જાહેર URL પર hard-refresh કરો. તે માટે કંઈ ગોઠવવાનું નથી. જો તમે એવું custom domain જોડો જેનું DNS Cloudflare પર છે, તો દસ્તાવેજો record ને proxied ને બદલે "DNS only" પર સેટ કરવા કહે છે, જેથી Mythex HTTPS યોગ્ય રીતે જારી કરી શકે. દસ્તાવેજોમાં કેવી રીતે પ્રકાશિત કરવું અને custom domains જુઓ, અને વેબ hosting પરની અમારી માર્ગદર્શિકા પણ જુઓ.
પ્રશ્નો
સાદી ભાષામાં CDN એટલે શું?
CDN (content delivery network) એ ઘણા સ્થળોએ રહેલા સર્વરોનું નેટવર્ક છે, જે તમારી વેબસાઇટની ફાઇલોની નકલો રાખે છે. મુલાકાતીઓને તમારા મુખ્ય સર્વરને બદલે તેમની નજીકના સ્થળેથી સેવા આપવામાં આવે છે, એટલે પેજ ઝડપથી લોડ થાય છે અને તમારા સર્વરનું કામ ઓછું થાય છે.
સાઇટ અપડેટ કર્યા પછી પણ મને જૂનું વર્ઝન કેમ દેખાય છે?
સામાન્ય રીતે કારણ કે જૂની ફાઇલની નકલ cache થયેલી હોય છે — CDN માં, તમારા બ્રાઉઝરમાં, અથવા બંનેમાં. Hard refresh બ્રાઉઝર બાજુની સમસ્યા ઉકેલે છે; CDN ની નકલો પોતાની મેળે સમાપ્ત થાય છે અથવા સાફ કરી શકાય છે. Build tools બદલાયેલી ફાઇલોને નવા નામ આપીને મોટાભાગની આ સમસ્યા ટાળે છે.
નાની વેબસાઇટ માટે શું મને CDN ની જરૂર છે?
ઘણી વાર તમારી પાસે તે પસંદ કર્યા વગર જ હોય છે, કારણ કે ઘણા hosting platforms આપમેળે સાઇટ આગળ CDN મૂકે છે. જો તમારી પાસે ન હોય અને મુલાકાતીઓ અનેક દેશોમાં ફેલાયેલા હોય, તો એક ઉમેરવું સામાન્ય રીતે ફાયદાકારક છે.
શું CDN મારી એપનો ડેટા અને લૉગ ઇન થયેલા પેજ cache કરી શકે?
તેને જે મંજૂરી હોય તે તે cache કરી શકે છે, એટલે તેને કાળજીપૂર્વક ગોઠવવું જરૂરી છે. Images, scripts અને styles જેવી જાહેર ફાઇલો આદર્શ છે. વ્યક્તિગત અથવા લૉગ ઇન થયેલી સામગ્રી સામાન્ય રીતે શેર થતા CDN માં cache ન કરવી જોઈએ, નહીંતર એક વપરાશકર્તા બીજાનો ડેટા જોઈ શકે.