2020-ൽ Linux-നുള്ള 10 മികച്ച ഓപ്പൺ സോഴ്uസ് കാഷിംഗ് ടൂളുകൾ


വിശ്വസനീയമായ ഡിസ്ട്രിബ്യൂഡ് കമ്പ്യൂട്ടിംഗ് സിസ്റ്റങ്ങളും ആപ്ലിക്കേഷനുകളും പ്രമുഖ ബിസിനസുകളുടെ ആണിക്കല്ലായി മാറിയിരിക്കുന്നു, പ്രത്യേകിച്ച് മിഷൻ-ക്രിട്ടിക്കൽ ബിസിനസ്സ് പ്രക്രിയകൾ ഓട്ടോമേറ്റ് ചെയ്യുന്നതിനും നിയന്ത്രിക്കുന്നതിനും ഉപഭോക്താക്കൾക്ക് സേവനങ്ങൾ നൽകുന്നതിനും. ഈ സിസ്റ്റങ്ങളുടെയും ആപ്ലിക്കേഷനുകളുടെയും ഡവലപ്പർമാരും സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർമാരും എന്ന നിലയിൽ, നിങ്ങൾക്ക് ഏറ്റവും കാര്യക്ഷമമായ സിസ്റ്റങ്ങൾ ലഭ്യമാണെന്ന് ഉറപ്പാക്കുന്ന എല്ലാത്തരം വിവര സാങ്കേതിക (ഐടി) പരിഹാരങ്ങളും നിങ്ങൾ നൽകുമെന്ന് പ്രതീക്ഷിക്കുന്നു.

അന്തിമ ഉപയോക്താക്കൾക്ക് തൃപ്തികരമായ സേവന നിലവാരം നൽകുന്നതിന് സിസ്റ്റം/ആപ്ലിക്കേഷൻ പ്രകടനം, വിശ്വാസ്യത, ലഭ്യത, സ്കേലബിളിറ്റി എന്നിവയ്uക്കായുള്ള തന്ത്രങ്ങൾ രൂപകൽപ്പന ചെയ്യുക, പരീക്ഷിക്കുക, നടപ്പിലാക്കുക തുടങ്ങിയ ജോലികൾ ഇതിൽ ഉൾപ്പെടുന്നു. നിങ്ങൾക്ക് ആശ്രയിക്കാവുന്ന, വളരെ അടിസ്ഥാനപരവും എന്നാൽ ഫലപ്രദവുമായ ആപ്ലിക്കേഷൻ ഡെലിവറി ടെക്നിക്കുകളിൽ ഒന്നാണ് കാഷിംഗ്. കൂടുതൽ മുന്നോട്ട് പോകുന്നതിന് മുമ്പ്, കാഷിംഗ് എന്താണ്, എവിടെ ഒപ്പം/അല്ലെങ്കിൽ അത് എങ്ങനെ പ്രയോഗിക്കാം, അതിന്റെ പ്രയോജനങ്ങൾ എന്നിവയെക്കുറിച്ച് നമുക്ക് ഹ്രസ്വമായി നോക്കാം?

കാഷിംഗ് (അല്ലെങ്കിൽ ഉള്ളടക്ക കാഷിംഗ്) ഒരു താൽക്കാലിക സ്റ്റോറേജ് ലൊക്കേഷനിൽ (കാഷെ എന്നും അറിയപ്പെടുന്നു) ഡാറ്റയുടെ പകർപ്പുകൾ സംഭരിക്കുന്നതിനുള്ള വ്യാപകമായി ഉപയോഗിക്കുന്ന ഒരു സാങ്കേതികതയാണ്, അതിലൂടെ ഡാറ്റ യഥാർത്ഥ സംഭരണത്തിൽ നിന്ന് വീണ്ടെടുക്കുന്നതിനേക്കാൾ എളുപ്പത്തിലും വേഗത്തിലും ആക്സസ് ചെയ്യാൻ കഴിയും. കാഷെയിൽ സംഭരിച്ചിരിക്കുന്ന ഡാറ്റയിൽ ഫയലുകൾ അല്ലെങ്കിൽ ഫയലുകളുടെ ശകലങ്ങൾ (HTML ഫയലുകൾ, സ്ക്രിപ്റ്റുകൾ, ഇമേജുകൾ, ഡോക്യുമെന്റുകൾ മുതലായവ), ഡാറ്റാബേസ് ഓപ്പറേഷനുകൾ അല്ലെങ്കിൽ റെക്കോർഡുകൾ, API കോളുകൾ, DNS റെക്കോർഡുകൾ മുതലായവ കാഷിംഗിന്റെ തരവും ഉദ്ദേശ്യവും അനുസരിച്ച് ഉൾപ്പെട്ടേക്കാം.

ഒരു കാഷെ ഹാർഡ്uവെയറിന്റെയോ സോഫ്റ്റ്uവെയറിന്റെയോ രൂപത്തിൽ ആകാം. സോഫ്uറ്റ്uവെയർ അധിഷ്uഠിത കാഷെ (ഇത് ഈ ലേഖനത്തിന്റെ ഫോക്കസ് ആണ്) ഒരു ആപ്ലിക്കേഷൻ സ്റ്റാക്കിന്റെ വിവിധ ലെയറുകളിൽ നടപ്പിലാക്കിയേക്കാം.

ക്ലയന്റ് സൈഡിൽ (അല്ലെങ്കിൽ ആപ്ലിക്കേഷൻ അവതരണ ലെയറിൽ) കാഷിംഗ് പ്രയോഗിക്കാൻ കഴിയും, ഉദാഹരണത്തിന്, ബ്രൗസർ കാഷിംഗ് അല്ലെങ്കിൽ ആപ്പ് കാഷിംഗ് (അല്ലെങ്കിൽ ഓഫ്uലൈൻ മോഡ്). മിക്കവാറും എല്ലാ ആധുനിക ബ്രൗസറുകളും ഒരു HTTP കാഷെ നടപ്പിലാക്കി കൊണ്ട് അയയ്ക്കുന്നു. പ്രാദേശികമായി സംഭരിച്ചിരിക്കുന്ന ഉള്ളടക്കത്തിന്റെ പഴയ പകർപ്പ് ഉപയോഗിക്കുന്ന ബ്രൗസറിനുപകരം, ഒരു വെബ്uസൈറ്റിലോ അപ്ലിക്കേഷനിലോ ഏറ്റവും പുതിയ ഡാറ്റയോ ഉള്ളടക്കമോ കാണാൻ നിങ്ങളെ പ്രാപ്uതമാക്കുന്നതിന് ഒരു വെബ് ആപ്ലിക്കേഷൻ ആക്uസസ് ചെയ്യുമ്പോൾ \നിങ്ങളുടെ കാഷെ മായ്uക്കുക എന്ന ജനപ്രിയ വാക്യത്തെക്കുറിച്ച് നിങ്ങൾ കേട്ടിരിക്കാം.

ക്ലയന്റ്-സൈഡ് കാഷിംഗിന്റെ മറ്റൊരു ഉദാഹരണം ഓപ്പറേറ്റിംഗ് സിസ്റ്റം (OS) തലത്തിൽ നടക്കുന്ന DNS കാഷിംഗ് ആണ്. OS അല്ലെങ്കിൽ വെബ് ബ്രൗസർ മുഖേനയുള്ള മുൻ DNS ലുക്കപ്പുകൾ സംബന്ധിച്ച വിവരങ്ങളുടെ താൽക്കാലിക സംഭരണമാണിത്.

ഒരു LAN-ലോ WAN-ലോ പ്രോക്സികൾ വഴി നെറ്റ്uവർക്ക് തലത്തിലും കാഷിംഗ് നടപ്പിലാക്കാം. ആഗോളതലത്തിൽ വിതരണം ചെയ്യുന്ന വെബ് പ്രോക്uസി സെർവറുകളുടെ ശൃംഖലയായ CDN-കളിൽ (ഉള്ളടക്ക ഡെലിവറി നെറ്റ്uവർക്കുകൾ) ഇത്തരത്തിലുള്ള കാഷിംഗിന്റെ ഒരു സാധാരണ ഉദാഹരണമാണ്.

മൂന്നാമതായി, നിങ്ങൾക്ക് ഉത്ഭവത്തിലോ ബാക്കെൻഡ് സെർവറിലോ കാഷിംഗ് നടപ്പിലാക്കാം. സെർവർ-ലെവൽ കാഷിംഗിന്റെ വ്യത്യസ്ത രൂപങ്ങളുണ്ട്, അവയിൽ ഉൾപ്പെടുന്നു:

  • വെബ്സെർവർ കാഷിംഗ് (ചിത്രങ്ങൾ, പ്രമാണങ്ങൾ, സ്ക്രിപ്റ്റുകൾ മുതലായവയുടെ കാഷെ ചെയ്യുന്നതിനായി).
  • അപ്ലിക്കേഷൻ കാഷിംഗ് അല്ലെങ്കിൽ ഓർമ്മപ്പെടുത്തൽ (ഡിസ്കിൽ നിന്നുള്ള ഫയലുകൾ വായിക്കുന്നതിനോ മറ്റ് സേവനങ്ങളിൽ നിന്നോ പ്രോസസ്സുകളിൽ നിന്നോ ഉള്ള ഡാറ്റ അല്ലെങ്കിൽ ഒരു API-യിൽ നിന്ന് ഡാറ്റ അഭ്യർത്ഥിക്കുന്നതിനോ ഉപയോഗിക്കുന്നു).
  • ഡാറ്റാബേസ് കാഷിംഗ് (അഭ്യർത്ഥിച്ച ഡാറ്റാബേസ് വരികൾ, അന്വേഷണ ഫലങ്ങൾ, മറ്റ് പ്രവർത്തനങ്ങൾ എന്നിവ പോലുള്ള പതിവായി ഉപയോഗിക്കുന്ന ഡാറ്റയിലേക്ക് ഇൻ-മെമ്മറി ആക്uസസ് നൽകുന്നതിന്).

ഒരു ഡാറ്റാബേസ്, ഫയൽ, സിസ്റ്റം മെമ്മറി തുടങ്ങി ഏത് സ്റ്റോറേജ് സിസ്റ്റത്തിലും കാഷെ ഡാറ്റ സംഭരിക്കാൻ കഴിയുമെന്നത് ശ്രദ്ധിക്കുക, എന്നാൽ പ്രാഥമിക ഉറവിടത്തേക്കാൾ വേഗതയേറിയ മീഡിയം ആയിരിക്കണം. ഇക്കാര്യത്തിൽ, ഇൻ-മെമ്മറി കാഷിംഗ് ആണ് ഏറ്റവും ഫലപ്രദവും സാധാരണയായി ഉപയോഗിക്കുന്നതുമായ കാഷിംഗ് രീതി.

കാഷിംഗ് ഇനിപ്പറയുന്നവ ഉൾപ്പെടെ നിരവധി ആനുകൂല്യങ്ങൾ വാഗ്ദാനം ചെയ്യുന്നു:

  • ഡാറ്റാബേസ് തലത്തിൽ, കാഷെ ചെയ്uത ഡാറ്റയ്uക്കായി ഇത് മൈക്രോസെക്കൻഡിലേക്ക് വായനയുടെ പ്രകടനം മെച്ചപ്പെടുത്തുന്നു. റൈറ്റ് പെർഫോമൻസ് മെച്ചപ്പെടുത്താൻ നിങ്ങൾക്ക് റൈറ്റ്-ബാക്ക് കാഷെ ഉപയോഗിക്കാം, അവിടെ ഡാറ്റ മെമ്മറിയിലും പിന്നീട് ഡിസ്കിലേക്കോ മെയിൻ സ്റ്റോറേജിലേക്കോ നിശ്ചിത ഇടവേളകളിൽ എഴുതുന്നു. എന്നാൽ അതിന്റെ ഡാറ്റാ സമഗ്രതയുടെ വശം വിനാശകരമായ പ്രത്യാഘാതങ്ങൾ ഉണ്ടാക്കിയേക്കാം. ഉദാഹരണത്തിന്, പ്രധാന സംഭരണത്തിലേക്ക് ഡാറ്റ പ്രതിജ്ഞാബദ്ധമാകുന്നതിന് തൊട്ടുമുമ്പ് സിസ്റ്റം ക്രാഷ് ചെയ്യുമ്പോൾ.
  • ആപ്ലിക്കേഷൻ തലത്തിൽ, ഒരു കാഷെയ്ക്ക് ആപ്ലിക്കേഷൻ പ്രോസസിനുള്ളിൽ തന്നെ പതിവായി വായിക്കുന്ന ഡാറ്റ സംഭരിക്കാൻ കഴിയും, അതുവഴി ഡാറ്റ ലുക്ക് അപ്പ് സമയം സെക്കന്റുകൾ മുതൽ മൈക്രോസെക്കൻഡ് വരെ കുറയ്ക്കുന്നു, പ്രത്യേകിച്ച് നെറ്റ്uവർക്കിൽ.
  • മൊത്തത്തിലുള്ള ആപ്ലിക്കേഷനും സെർവർ പ്രകടനവും കണക്കിലെടുത്ത്, കാഷെ ചെയ്ത ഡാറ്റ ക്ലയന്റുകൾക്ക് നൽകുന്നതിനാൽ നിങ്ങളുടെ സെർവർ ലോഡ്, ലേറ്റൻസി, നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് എന്നിവ കുറയ്ക്കാൻ കാഷിംഗ് സഹായിക്കുന്നു, അങ്ങനെ ക്ലയന്റുകൾക്ക് പ്രതികരണ സമയവും ഡെലിവറി വേഗതയും മെച്ചപ്പെടുത്തുന്നു.
  • കാഷിംഗ്, പ്രത്യേകിച്ച് CDN-കൾ വഴിയുള്ള ഉള്ളടക്ക ലഭ്യതയും മറ്റ് പല ആനുകൂല്യങ്ങളും അനുവദിക്കുന്നു.

ഈ ലേഖനത്തിൽ, Linux-ൽ സെർവർ-സൈഡ് കാഷിംഗ് നടപ്പിലാക്കുന്നതിനുള്ള ചില മികച്ച ഓപ്പൺ സോഴ്uസ് (അപ്ലിക്കേഷൻ/ഡാറ്റാബേസ് കാഷിംഗ്, കാഷിംഗ് പ്രോക്സി സെർവറുകൾ) ടൂളുകൾ ഞങ്ങൾ അവലോകനം ചെയ്യും.

1. റെഡിസ്

റെഡിസ് (പൂർണ്ണമായി റിമോട്ട് നിഘണ്ടു സെർവർ) ഒരു സ്വതന്ത്ര ഓപ്പൺ സോഴ്uസ് ആണ്, വേഗതയേറിയതും ഉയർന്ന പ്രകടനവും ഫ്ലെക്സിബിൾ ഡിസ്ട്രിബ്യൂഡ് ഇൻ-മെമ്മറി കമ്പ്യൂട്ടിംഗ് സിസ്റ്റവുമാണ്, അത് എല്ലാ പ്രോഗ്രാമിംഗ് ഭാഷകളിൽ നിന്നും ഉപയോഗിക്കാവുന്നതാണ്.

ഇത് ഒരു കാഷിംഗ് എഞ്ചിൻ, ഇൻ-മെമ്മറി പെർസിസ്റ്റന്റ് ഓൺ-ഡിസ്ക് ഡാറ്റാബേസ്, മെസേജ് ബ്രോക്കർ എന്നിങ്ങനെ പ്രവർത്തിക്കുന്ന ഒരു ഇൻ-മെമ്മറി ഡാറ്റാ സ്ട്രക്ചർ സ്റ്റോറാണ്. ലിനക്സിലും (വിന്യസിക്കാനുള്ള ശുപാർശിത പ്ലാറ്റ്ഫോം) OS X-ലും ഇത് വികസിപ്പിച്ച് പരീക്ഷിച്ചിട്ടുണ്ടെങ്കിലും, ബാഹ്യ ആശ്രിതത്വങ്ങളില്ലാതെ, *BSD പോലുള്ള മറ്റ് POSIX സിസ്റ്റങ്ങളിലും Redis പ്രവർത്തിക്കുന്നു.

സ്ട്രിംഗുകൾ, ഹാഷുകൾ, ലിസ്റ്റുകൾ, സെറ്റുകൾ, അടുക്കിയ സെറ്റുകൾ, ബിറ്റ്മാപ്പുകൾ, സ്ട്രീമുകൾ എന്നിവയും അതിലേറെയും പോലുള്ള നിരവധി ഡാറ്റാ ഘടനകളെ Redis പിന്തുണയ്ക്കുന്നു. ഒരു നിർദ്ദിഷ്ട പ്രശ്നം പരിഹരിക്കുന്നതിന് ഒരു നിർദ്ദിഷ്ട ഡാറ്റ ഘടന ഉപയോഗിക്കാൻ ഇത് പ്രോഗ്രാമർമാരെ പ്രാപ്തരാക്കുന്നു. ഒരു സ്ട്രിംഗിലേക്ക് കൂട്ടിച്ചേർക്കൽ, ഒരു ലിസ്റ്റിലേക്ക് ഘടകങ്ങൾ തള്ളൽ, ഒരു ഹാഷിന്റെ മൂല്യം വർദ്ധിപ്പിക്കൽ, കമ്പ്യൂട്ടിംഗ് സെറ്റ് ഇന്റർസെക്ഷൻ എന്നിവയും അതിലേറെയും പോലുള്ള അതിന്റെ ഡാറ്റാ ഘടനയിലെ യാന്ത്രിക പ്രവർത്തനങ്ങളെ ഇത് പിന്തുണയ്ക്കുന്നു.

ലുവാ സ്ക്രിപ്റ്റിംഗ്, പെർസിസ്റ്റൻസ് ഓപ്ഷനുകളുടെ ഒരു ശ്രേണി, ക്ലയന്റ്-സെർവർ ആശയവിനിമയത്തിന്റെ എൻക്രിപ്ഷൻ എന്നിവ ഇതിന്റെ പ്രധാന സവിശേഷതകളിൽ ഉൾപ്പെടുന്നു.

ഇൻ-മെമ്മറി എന്നാൽ സ്ഥിരമായ ഓൺ-ഡിസ്ക് ഡാറ്റാബേസ് ആയതിനാൽ, ഇൻ-മെമ്മറി ഡാറ്റാസെറ്റിനൊപ്പം മികച്ച രീതിയിൽ പ്രവർത്തിക്കുമ്പോൾ റെഡിസ് മികച്ച പ്രകടനം വാഗ്ദാനം ചെയ്യുന്നു. എന്നിരുന്നാലും, MySQL, PostgreSQL, കൂടാതെ മറ്റു പലതും പോലുള്ള ഒരു ഓൺ-ഡിസ്ക് ഡാറ്റാബേസിനൊപ്പം നിങ്ങൾക്ക് ഇത് ഉപയോഗിക്കാൻ കഴിയും. ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് Redis-ൽ വളരെ റൈറ്റ്-ഹെവി ചെറിയ ഡാറ്റ എടുത്ത് ഒരു ഓൺ-ഡിസ്ക് ഡാറ്റാബേസിൽ ഡാറ്റയുടെ മറ്റ് ഭാഗങ്ങൾ ഇടാം.

Redis പല തരത്തിൽ സുരക്ഷയെ പിന്തുണയ്uക്കുന്നു: ഒന്ന് ബാഹ്യ നെറ്റ്uവർക്കുകളിൽ നിന്ന് Redis ഇൻസ്uറ്റൻസുകൾ ആക്uസസ് ചെയ്യുന്നതിൽ നിന്ന് സുരക്ഷിതമാക്കാൻ \സംരക്ഷിത-മോഡ് സവിശേഷത ഉപയോഗിച്ച്. ഇത് ക്ലയന്റ്-സെർവർ പ്രാമാണീകരണത്തെ പിന്തുണയ്uക്കുന്നു (സെർവറിൽ ഒരു പാസ്uവേഡ് കോൺഫിഗർ ചെയ്uത് ക്ലയന്റിൽ നൽകിയിരിക്കുന്നു ) കൂടാതെ ക്ലയന്റ് കണക്ഷനുകൾ, റെപ്ലിക്കേഷൻ ലിങ്കുകൾ, റെഡിസ് ക്ലസ്റ്റർ ബസ് പ്രോട്ടോക്കോൾ എന്നിവയും അതിലേറെയും പോലുള്ള എല്ലാ ആശയവിനിമയ ചാനലുകളിലും TLS.

ഡാറ്റാബേസ് കാഷിംഗ്, ഫുൾ-പേജ് കാഷിംഗ്, ഉപയോക്തൃ സെഷൻ ഡാറ്റ മാനേജ്uമെന്റ്, API പ്രതികരണങ്ങളുടെ സംഭരണം, പ്രസിദ്ധീകരിക്കുക/സബ്uസ്uക്രൈബ് ചെയ്യുക സന്ദേശമയയ്uക്കൽ സംവിധാനം, സന്ദേശ ക്യൂ എന്നിവയും അതിലേറെയും ഉൾപ്പെടുന്ന നിരവധി ഉപയോഗ കേസുകൾ Redis-ന് ഉണ്ട്. ഗെയിമുകൾ, സോഷ്യൽ നെറ്റ്uവർക്കിംഗ് ആപ്ലിക്കേഷനുകൾ, RSS ഫീഡുകൾ, തത്സമയ ഡാറ്റ അനലിറ്റിക്uസ്, ഉപയോക്തൃ ശുപാർശകൾ മുതലായവയിൽ ഇവ പ്രയോഗിക്കാൻ കഴിയും.

2. മെംകാഷ്ഡ്

Memcached ഒരു സ്വതന്ത്രവും ഓപ്പൺ സോഴ്uസും, ലളിതവും എന്നാൽ ശക്തവുമായ, വിതരണം ചെയ്ത മെമ്മറി ഒബ്uജക്റ്റ് കാഷിംഗ് സിസ്റ്റമാണ്. ഡാറ്റാബേസ് കോളുകളുടെ ഫലങ്ങൾ, API കോളുകൾ, അല്ലെങ്കിൽ പേജ് റെൻഡറിംഗ് എന്നിവ പോലുള്ള ചെറിയ ചെറിയ ഡാറ്റയ്ക്കുള്ള ഇൻ-മെമ്മറി കീ-വാല്യൂ സ്റ്റോറാണിത്. ലിനക്സ്, ഒഎസ് എക്സ് എന്നിവയുൾപ്പെടെയുള്ള യുണിക്സ് പോലുള്ള ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിലും മൈക്രോസോഫ്റ്റ് വിൻഡോസിലും ഇത് പ്രവർത്തിക്കുന്നു.

ഒരു ഡെവലപ്പർ ടൂൾ ആയതിനാൽ, ഉള്ളടക്കം കാഷെ ചെയ്യുന്നതിലൂടെ ഡൈനാമിക് വെബ് ആപ്ലിക്കേഷനുകളുടെ വേഗത വർദ്ധിപ്പിക്കുന്നതിന് ഇത് ഉദ്ദേശിച്ചുള്ളതാണ് (സ്ഥിരസ്ഥിതിയായി, അടുത്തിടെ ഉപയോഗിച്ച (LRU) കാഷെ) അങ്ങനെ ഓൺ-ഡിസ്ക് ഡാറ്റാബേസ് ലോഡ് കുറയ്ക്കുന്നു - ഇത് ഒരു ഹ്രസ്വകാല മെമ്മറിയായി പ്രവർത്തിക്കുന്നു. അപേക്ഷകൾ. ഏറ്റവും ജനപ്രിയമായ പ്രോഗ്രാമിംഗ് ഭാഷകൾക്കായി ഇത് ഒരു API വാഗ്ദാനം ചെയ്യുന്നു.

Memcached സ്ട്രിംഗുകളെ ഏക ഡാറ്റാ തരമായി പിന്തുണയ്ക്കുന്നു. ഇതിന് ഒരു ക്ലയന്റ്-സെർവർ ആർക്കിടെക്ചർ ഉണ്ട്, അവിടെ ലോജിക്കിന്റെ പകുതി ക്ലയന്റ് വശത്തും മറ്റേ പകുതി സെർവർ വശത്തും സംഭവിക്കുന്നു. പ്രധാനമായി, ഒരു ഇനത്തിനായി ഏത് സെർവറിലേക്ക് എഴുതുകയോ വായിക്കുകയോ ചെയ്യണമെന്ന് ക്ലയന്റുകൾ എങ്ങനെ തിരഞ്ഞെടുക്കണമെന്ന് മനസ്സിലാക്കുന്നു. കൂടാതെ, ഒരു സെർവറിലേക്ക് കണക്റ്റുചെയ്യാൻ കഴിയുന്നില്ലെങ്കിൽ എന്തുചെയ്യണമെന്ന് ഒരു ക്ലയന്റിന് നന്നായി അറിയാം.

ഇത് ഒരു ഡിസ്ട്രിബ്യൂട്ടഡ് കാഷിംഗ് സിസ്റ്റമാണെങ്കിലും, ക്ലസ്റ്ററിംഗിനെ പിന്തുണയ്ക്കുന്നു, Memcached സെർവറുകൾ പരസ്പരം വിച്ഛേദിക്കപ്പെട്ടിരിക്കുന്നു (അതായത് അവ പരസ്പരം അറിയുന്നില്ല). ഇതിനർത്ഥം റെഡിസിലേതുപോലെ ഒരു അനുകരണ പിന്തുണയും ഇല്ല എന്നാണ്. ഇനങ്ങൾ എങ്ങനെ സംഭരിക്കാമെന്നും കൊണ്ടുവരണമെന്നും, എപ്പോൾ പുറത്താക്കണം, അല്ലെങ്കിൽ മെമ്മറി പുനരുപയോഗിക്കണം എന്നിവയും അവർ മനസ്സിലാക്കുന്നു. കൂടുതൽ സെർവറുകൾ ചേർത്തുകൊണ്ട് നിങ്ങൾക്ക് ലഭ്യമായ മെമ്മറി വർദ്ധിപ്പിക്കാൻ കഴിയും.

Memcached 1.5.13 പ്രകാരം TLS വഴിയുള്ള പ്രാമാണീകരണവും എൻക്രിപ്ഷനും ഇത് പിന്തുണയ്ക്കുന്നു, എന്നാൽ ഈ സവിശേഷത ഇപ്പോഴും പരീക്ഷണ ഘട്ടത്തിലാണ്.

3. അപ്പാച്ചെ ഇഗ്നൈറ്റ്

അപ്പാച്ചെ ഇഗ്നൈറ്റ്, ഒരു സ്വതന്ത്ര ഓപ്പൺ സോഴ്uസ്, തിരശ്ചീനമായി അളക്കാവുന്ന ഡിസ്uട്രിബ്യൂഡ് ഇൻ-മെമ്മറി കീ-വാല്യൂ സ്റ്റോർ, കാഷെ, വിതരണം ചെയ്ത ഡാറ്റയിൽ കമ്പ്യൂട്ടിംഗിനായി ശക്തമായ പ്രോസസ്സിംഗ് API-കൾ നൽകുന്ന മൾട്ടി മോഡൽ ഡാറ്റാബേസ് സിസ്റ്റം. മെമ്മറിയിലോ അല്ലെങ്കിൽ ഇഗ്നൈറ്റ് നേറ്റീവ് പെർസിസ്റ്റൻസ് ഉപയോഗിച്ചോ ഉപയോഗിക്കാവുന്ന ഒരു ഇൻ-മെമ്മറി ഡാറ്റ ഗ്രിഡ് കൂടിയാണിത്. ലിനക്സ്, വിൻഡോസ് തുടങ്ങിയ യുണിക്സ് പോലുള്ള സിസ്റ്റങ്ങളിൽ ഇത് പ്രവർത്തിക്കുന്നു.

ഒന്നിലധികം ക്ലസ്റ്റർ നോഡുകൾ, കോ-ലൊക്കേറ്റഡ് പ്രോസസ്സിംഗ്, മെഷീൻ ലേണിംഗ് എന്നിവയിലുടനീളമുള്ള മൾട്ടി-ടയർ സ്റ്റോറേജ്, പൂർണ്ണമായ SQL പിന്തുണ, ACID (ആറ്റോമിസിറ്റി, കൺസിസ്റ്റൻസി, ഐസൊലേഷൻ, ഡ്യൂറബിലിറ്റി) ഇടപാടുകൾ (കീ-മൂല്യം API തലത്തിൽ മാത്രം പിന്തുണയ്ക്കുന്നു) എന്നിവ ഇതിൽ ഫീച്ചർ ചെയ്യുന്നു. ഏതെങ്കിലും RDBMS (MySQL, PostgreSQL, Oracle ഡാറ്റാബേസ് മുതലായവ) അല്ലെങ്കിൽ NoSQL സ്റ്റോറുകൾ ഉൾപ്പെടെ ഏതെങ്കിലും മൂന്നാം കക്ഷി ഡാറ്റാബേസുകളുമായുള്ള യാന്ത്രിക സംയോജനത്തെ ഇത് പിന്തുണയ്ക്കുന്നു.

ഇഗ്uനൈറ്റ് ഒരു SQL ഡാറ്റാ സ്റ്റോർ ആയി പ്രവർത്തിക്കുന്നുണ്ടെങ്കിലും, ഇത് പൂർണ്ണമായും ഒരു SQL ഡാറ്റാബേസ് അല്ല എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്. പരമ്പരാഗത ഡാറ്റാബേസുകളുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ ഇത് നിയന്ത്രണങ്ങളും സൂചികകളും വ്യക്തമായി കൈകാര്യം ചെയ്യുന്നു; ഇത് പ്രാഥമിക, ദ്വിതീയ സൂചികകളെ പിന്തുണയ്uക്കുന്നു, എന്നാൽ അദ്വിതീയത നടപ്പിലാക്കാൻ പ്രാഥമിക സൂചികകൾ മാത്രമേ ഉപയോഗിക്കുന്നുള്ളൂ. കൂടാതെ, വിദേശ പ്രധാന നിയന്ത്രണങ്ങൾക്ക് ഇതിന് പിന്തുണയില്ല.

സെർവറിൽ പ്രാമാണീകരണം പ്രവർത്തനക്ഷമമാക്കാനും ക്ലയന്റുകളിൽ ഉപയോക്തൃ ക്രെഡൻഷ്യലുകൾ നൽകാനും നിങ്ങളെ അനുവദിച്ചുകൊണ്ട് Ignite സുരക്ഷയെ പിന്തുണയ്ക്കുന്നു. എല്ലാ ഇഗ്uനൈറ്റ് നോഡുകൾക്കിടയിലും ഒരു സുരക്ഷിത കണക്ഷൻ നൽകുന്നതിന് പിന്തുണയുള്ള എസ്എസ്എൽ സോക്കറ്റ് ആശയവിനിമയവുമുണ്ട്.

കാഷിംഗ് സിസ്റ്റം, സിസ്റ്റം വർക്ക്ലോഡ് ആക്സിലറേഷൻ, തത്സമയ ഡാറ്റ പ്രോസസ്സിംഗ്, അനലിറ്റിക്സ് എന്നിവ ഉൾപ്പെടുന്ന നിരവധി ഉപയോഗ കേസുകൾ ഇഗ്നൈറ്റിനുണ്ട്. ഗ്രാഫ് കേന്ദ്രീകൃത പ്ലാറ്റ്uഫോമായും ഇത് ഉപയോഗിക്കാം.

4. കൗച്ച്ബേസ് സെർവർ

Couchbase സെർവർ ഒരു ഓപ്പൺ സോഴ്uസ്, വിതരണം ചെയ്ത NoSQL ഡോക്യുമെന്റ്-ഓറിയന്റഡ് എൻഗേജ്uമെന്റ് ഡാറ്റാബേസ് കൂടിയാണ്, അത് ഒരു കീ-വാല്യൂ ഫോർമാറ്റിൽ ഇനങ്ങളായി ഡാറ്റ സംഭരിക്കുന്നു. ഇത് Linux-ലും Windows, Mac OS X പോലുള്ള മറ്റ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിലും പ്രവർത്തിക്കുന്നു. ഡാറ്റയിലെ സബ്-മില്ലിസെക്കൻഡ് പ്രവർത്തനങ്ങളെ പിന്തുണയ്uക്കുന്നതിന് ശക്തമായ അന്വേഷണവും ഇൻഡെക്uസിംഗ് സേവനങ്ങളും നൽകുന്ന N1QL എന്ന ഫീച്ചർ-സമ്പന്നമായ, ഡോക്യുമെന്റ്-ഓറിയന്റഡ് ക്വറി-ലാംഗ്വേജ് ഇത് ഉപയോഗിക്കുന്നു.

നിയന്ത്രിത കാഷെ, പർപ്പസ്-ബിൽറ്റ് ഇൻഡെക്സറുകൾ, ശക്തമായ ക്വറി എഞ്ചിൻ, സ്കെയിൽ-ഔട്ട് ആർക്കിടെക്ചർ (മൾട്ടി-ഡൈമൻഷണൽ സ്കെയിലിംഗ്), ബിഗ് ഡാറ്റയും എസ്uക്യുഎൽ ഇന്റഗ്രേഷനും, ഫുൾ-സ്റ്റാക്ക് സെക്യൂരിറ്റി, ഉയർന്ന ലഭ്യത എന്നിവയുള്ള ഫാസ്റ്റ് കീ-വാല്യൂ സ്റ്റോറാണ് ഇതിന്റെ ശ്രദ്ധേയമായ സവിശേഷതകൾ. .

Couchbase സെർവർ നേറ്റീവ് മൾട്ടിപ്പിൾ ഇൻസ്uറ്റൻസ് ക്ലസ്റ്റർ പിന്തുണയോടെയാണ് വരുന്നത്, അവിടെ ഒരു ക്ലസ്റ്റർ മാനേജർ ടൂൾ എല്ലാ നോഡ് പ്രവർത്തനങ്ങളെയും ഏകോപിപ്പിക്കുകയും ക്ലയന്റുകൾക്ക് ഒരു ക്ലസ്റ്റർ-വൈഡ് ഇന്റർഫേസ് നൽകുകയും ചെയ്യുന്നു. പ്രധാനമായി, നിങ്ങൾക്ക് ആവശ്യാനുസരണം നോഡുകൾ ചേർക്കാനോ നീക്കംചെയ്യാനോ മാറ്റിസ്ഥാപിക്കാനോ കഴിയും, പ്രവർത്തനരഹിതമായ സമയമില്ലാതെ. ഒരു ക്ലസ്റ്ററിന്റെ നോഡുകളിലുടനീളം ഡാറ്റ റെപ്ലിക്കേഷനും ഡാറ്റാ സെന്ററുകളിലുടനീളമുള്ള സെലക്ടീവ് ഡാറ്റ റെപ്ലിക്കേഷനും ഇത് പിന്തുണയ്ക്കുന്നു.

സമർപ്പിത കൗച്ച്ബേസ് സെർവർ-പോർട്ടുകൾ, വ്യത്യസ്ത പ്രാമാണീകരണ സംവിധാനങ്ങൾ (ക്രെഡൻഷ്യലുകളോ സർട്ടിഫിക്കറ്റുകളോ ഉപയോഗിച്ച്), റോൾ അധിഷ്uഠിത ആക്uസസ്സ് നിയന്ത്രണം (സിസ്റ്റം-നിർവചിക്കപ്പെട്ട റോളുകൾക്കായി ഓരോ ആധികാരിക ഉപയോക്താവിനെയും പരിശോധിക്കുന്നതിന്), ഓഡിറ്റിംഗ്, ലോഗുകൾ, സെഷനുകൾ എന്നിവ ഉപയോഗിച്ച് ഇത് TLS വഴി സുരക്ഷ നടപ്പിലാക്കുന്നു. .

ഇതിന്റെ ഉപയോഗ കേസുകളിൽ ഏകീകൃത പ്രോഗ്രാമിംഗ് ഇന്റർഫേസ്, ഫുൾ-ടെക്uസ്റ്റ് തിരയൽ, സമാന്തര അന്വേഷണ പ്രോസസ്സിംഗ്, ഡോക്യുമെന്റ് മാനേജ്uമെന്റ്, ഇൻഡെക്uസിംഗ് എന്നിവയും അതിലേറെയും ഉൾപ്പെടുന്നു, കൂടാതെ വലിയ തോതിലുള്ള ഇന്ററാക്ടീവ് വെബ്, മൊബൈൽ, ഐഒടി ആപ്ലിക്കേഷനുകൾക്കായി ലോ-ലേറ്റൻസി ഡാറ്റ മാനേജ്uമെന്റ് നൽകുന്നതിന് ഇത് പ്രത്യേകം രൂപകൽപ്പന ചെയ്uതിരിക്കുന്നു.

5. Hazelcast IMDG

Hazelcast IMDG (ഇൻ-മെമ്മറി ഡാറ്റ ഗ്രിഡ്) ഒരു ഓപ്പൺ സോഴ്uസ്, ഭാരം കുറഞ്ഞതും വേഗതയേറിയതും വിപുലീകരിക്കാവുന്നതുമായ ഇൻ-മെമ്മറി ഡാറ്റ ഗ്രിഡ് മിഡിൽവെയറാണ്, അത് ഇലാസ്റ്റിക് ആയി അളക്കാവുന്ന ഡിസ്uട്രിബ്യൂഡ് ഇൻ-മെമ്മറി കമ്പ്യൂട്ടിംഗ് നൽകുന്നു. Hazelcast IMDG, Linux, Windows, Mac OS X എന്നിവയിലും ജാവ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുള്ള മറ്റേതെങ്കിലും പ്ലാറ്റ്uഫോമിലും പ്രവർത്തിക്കുന്നു. Map, Set, List, MultiMap, RingBuffer, HyperLogLog തുടങ്ങിയ വൈവിധ്യമാർന്ന ഫ്ലെക്സിബിൾ, ഭാഷാ-ദേശീയ ഡാറ്റാ ഘടനകളെ ഇത് പിന്തുണയ്ക്കുന്നു.

Hazelcast പിയർ-ടു-പിയർ ആണ് കൂടാതെ ലളിതമായ സ്കേലബിളിറ്റി, ക്ലസ്റ്റർ സജ്ജീകരണം (സ്ഥിതിവിവരക്കണക്കുകൾ ശേഖരിക്കാനും JMX പ്രോട്ടോക്കോൾ വഴി നിരീക്ഷിക്കാനും ഉപയോഗപ്രദമായ യൂട്ടിലിറ്റികൾ ഉപയോഗിച്ച് ക്ലസ്റ്റർ നിയന്ത്രിക്കാനുമുള്ള ഓപ്ഷനുകളോടെ), വിതരണം ചെയ്ത ഡാറ്റാ ഘടനകളും ഇവന്റുകളും, ഡാറ്റാ പോർഷനിംഗ്, ഇടപാടുകൾ എന്നിവ പിന്തുണയ്ക്കുന്നു. ഒന്നിലധികം അംഗങ്ങളിൽ ഓരോ ഡാറ്റ എൻട്രിയുടെയും ബാക്കപ്പ് സൂക്ഷിക്കുന്നതിനാൽ ഇത് അനാവശ്യമാണ്. നിങ്ങളുടെ ക്ലസ്റ്റർ സ്കെയിൽ ചെയ്യാൻ, മറ്റൊരു ഉദാഹരണം ആരംഭിക്കുക, ഡാറ്റയും ബാക്കപ്പുകളും സ്വയമേവ സമതുലിതമായിരിക്കുന്നു.

പരമാവധി പ്രോസസ്സിംഗ് വേഗതയ്ക്കായി നിങ്ങളുടെ ക്ലസ്റ്ററിലെ CPU-കൾ ആക്uസസ് ചെയ്യുന്നതിന് ഇത് ഉപയോഗപ്രദമായ API-കളുടെ ഒരു ശേഖരം നൽകുന്നു. മാപ്പ്, ക്യൂ, എക്uസിക്യുട്ടർ സർവീസ്, ലോക്ക്, ജെ കാഷെ തുടങ്ങിയ ജാവയിൽ നിന്നുള്ള ഡെവലപ്പർ-ഫ്രണ്ട്uലി ഇന്റർഫേസുകളുടെ വിതരണവും ഇത് വാഗ്ദാനം ചെയ്യുന്നു.

ഇതിന്റെ സുരക്ഷാ സവിശേഷതകളിൽ ക്ലസ്റ്റർ അംഗങ്ങളും ക്ലയന്റ് പ്രാമാണീകരണവും JAAS അടിസ്ഥാനമാക്കിയുള്ള സുരക്ഷാ ഫീച്ചറുകൾ വഴിയുള്ള ക്ലയന്റ് പ്രവർത്തനങ്ങളിലെ ആക്സസ് കൺട്രോൾ പരിശോധനകളും ഉൾപ്പെടുന്നു. ക്ലയന്റ്സ് എക്സിക്യൂട്ട് ചെയ്യുന്ന സോക്കറ്റ് കണക്ഷനുകളും റിമോട്ട് ഓപ്പറേഷനുകളും തടസ്സപ്പെടുത്താനും ക്ലസ്റ്റർ അംഗങ്ങൾ തമ്മിലുള്ള സോക്കറ്റ് ലെവൽ കമ്മ്യൂണിക്കേഷൻ എൻക്രിപ്ഷൻ ചെയ്യാനും SSL/TLS സോക്കറ്റ് കമ്മ്യൂണിക്കേഷൻ പ്രവർത്തനക്ഷമമാക്കാനും ഇത് അനുവദിക്കുന്നു. എന്നാൽ ഔദ്യോഗിക ഡോക്യുമെന്റേഷൻ അനുസരിച്ച്, ഈ സുരക്ഷാ സവിശേഷതകളിൽ ഭൂരിഭാഗവും എന്റർപ്രൈസ് പതിപ്പിൽ വാഗ്ദാനം ചെയ്യുന്നു.

മെമ്മറി കാഷിംഗും ഡാറ്റ സ്റ്റോറും വിതരണം ചെയ്യുന്നതാണ് ഇതിന്റെ ഏറ്റവും ജനപ്രിയമായ ഉപയോഗം. എന്നാൽ വെബ് സെഷൻ ക്ലസ്റ്ററിംഗ്, NoSQL മാറ്റിസ്ഥാപിക്കൽ, സമാന്തര പ്രോസസ്സിംഗ്, എളുപ്പമുള്ള സന്ദേശമയയ്uക്കൽ എന്നിവയ്uക്കും അതിലേറെ കാര്യങ്ങൾക്കുമായി ഇത് വിന്യസിക്കാനാകും.

6. Mcrouter

Facebook വികസിപ്പിച്ച് പരിപാലിക്കുന്ന Memcached വിന്യാസങ്ങൾ സ്കെയിൽ ചെയ്യുന്നതിനുള്ള ഒരു സ്വതന്ത്രവും ഓപ്പൺ സോഴ്uസ് Memcached പ്രോട്ടോക്കോൾ റൂട്ടറാണ് Mcrouter. Memcached ASCII പ്രോട്ടോക്കോൾ, ഫ്ലെക്സിബിൾ റൂട്ടിംഗ്, മൾട്ടി-ക്ലസ്റ്റർ സപ്പോർട്ട്, മൾട്ടി ലെവൽ കാഷെകൾ, കണക്ഷൻ പൂളിംഗ്, ഒന്നിലധികം ഹാഷിംഗ് സ്കീമുകൾ, പ്രിഫിക്സ് റൂട്ടിംഗ്, റെപ്ലിക്കേറ്റഡ് പൂളുകൾ, പ്രൊഡക്ഷൻ ട്രാഫിക് ഷാഡോവിംഗ്, ഓൺലൈൻ റീകോൺഫിഗറേഷൻ, ഡെസ്റ്റിനേഷൻ ഹെൽത്ത് മോണിറ്ററിംഗ്/ഓട്ടോമാറ്റിക് പരാജയം എന്നിവ ഇതിൽ ഉൾപ്പെടുന്നു.

കൂടാതെ, ഇത് കോൾഡ് കാഷെ വാം-അപ്പ്, സമ്പന്നമായ സ്ഥിതിവിവരക്കണക്കുകൾ, ഡീബഗ് കമാൻഡുകൾ, സേവനത്തിന്റെ വിശ്വസനീയമായ ഡിലീറ്റ് സ്ട്രീം നിലവാരം, വലിയ മൂല്യങ്ങൾ, പ്രക്ഷേപണ പ്രവർത്തനങ്ങൾ എന്നിവയെ പിന്തുണയ്ക്കുന്നു, കൂടാതെ IPv6, SSL പിന്തുണ എന്നിവയും നൽകുന്നു.

കാഷെ ഇൻഫ്രാസ്ട്രക്ചറിന്റെ ഒരു പ്രധാന ഘടകമായി ഫേസ്ബുക്കിലും ഇൻസ്റ്റാഗ്രാമിലും ഇത് ഉപയോഗിക്കുന്നു, പീക്ക് സമയത്ത് സെക്കൻഡിൽ ഏകദേശം 5 ബില്യൺ അഭ്യർത്ഥനകൾ കൈകാര്യം ചെയ്യാൻ.

7. വാർണിഷ് കാഷെ

അപ്പാച്ചെയും മറ്റ് പലതും, ക്ലയന്റ് അഭ്യർത്ഥനകൾ സ്വീകരിക്കുന്നതിനും വെബ് സെർവറിലേക്ക് കൈമാറുന്നതിനും ക്ലയന്റിന് വെബ് സെർവറുകളുടെ പ്രതികരണം നൽകുന്നതിനും ഡിഫോൾട്ട് HTTP പോർട്ടിൽ കേൾക്കാൻ.

ക്ലയന്റുകളുടെയും ഒറിജിൻ സെർവറുകളുടെയും ഇടയിൽ മധ്യസ്ഥനായി പ്രവർത്തിക്കുമ്പോൾ, വാർണിഷ് കാഷെ നിരവധി ആനുകൂല്യങ്ങൾ വാഗ്ദാനം ചെയ്യുന്നു, നിങ്ങളുടെ വെബ് സെർവർ ലോഡ് ലഘൂകരിക്കുന്നതിനും ക്ലയന്റുകൾക്ക് ഡെലിവറി വേഗത മെച്ചപ്പെടുത്തുന്നതിനുമായി മെമ്മറിയിൽ വെബ് ഉള്ളടക്കം കാഷെ ചെയ്യുന്നത് മൂലകമാണ്.

ഒരു ക്ലയന്റിൽ നിന്ന് ഒരു HTTP അഭ്യർത്ഥന ലഭിച്ച ശേഷം, അത് ബാക്കെൻഡ് വെബ്സെർവറിലേക്ക് കൈമാറുന്നു. വെബ്സെർവർ പ്രതികരിച്ചുകഴിഞ്ഞാൽ, വാർണിഷ് മെമ്മറിയിൽ ഉള്ളടക്കം കാഷെ ചെയ്യുകയും ക്ലയന്റിലേക്ക് പ്രതികരണം നൽകുകയും ചെയ്യുന്നു. ക്ലയന്റ് ഒരേ ഉള്ളടക്കത്തിനായി അഭ്യർത്ഥിക്കുമ്പോൾ, കാഷെ ബൂസ്റ്റിംഗ് ആപ്ലിക്കേഷൻ പ്രതികരണത്തിൽ നിന്ന് വാർണിഷ് അത് നൽകും. ഇതിന് കാഷെയിൽ നിന്ന് ഉള്ളടക്കം നൽകാൻ കഴിയുന്നില്ലെങ്കിൽ, അഭ്യർത്ഥന ബാക്കെൻഡിലേക്ക് കൈമാറുകയും പ്രതികരണം കാഷെ ചെയ്യുകയും ക്ലയന്റിന് കൈമാറുകയും ചെയ്യും.

വാർണിഷ് ഫീച്ചറുകൾ VCL (വാർണിഷ് കോൺഫിഗറേഷൻ ലാംഗ്വേജ് - ഒരു ഫ്ലെക്സിബിൾ ഡൊമെയ്ൻ-നിർദ്ദിഷ്ട ഭാഷ) അഭ്യർത്ഥനകൾ എങ്ങനെ കൈകാര്യം ചെയ്യണമെന്ന് കോൺഫിഗർ ചെയ്യാൻ ഉപയോഗിക്കുന്നു, വാർണിഷ് കാഷെയുടെ വിപുലീകരണങ്ങളായ വാർണിഷ് മൊഡ്യൂളുകൾ (VMODS).

സുരക്ഷയുടെ അടിസ്ഥാനത്തിൽ, വാർണിഷ് കാഷെ ലോഗിംഗ്, അഭ്യർത്ഥന പരിശോധന, VMODS വഴിയുള്ള ത്രോട്ടിലിംഗ്, പ്രാമാണീകരണം, അംഗീകാരം എന്നിവയെ പിന്തുണയ്ക്കുന്നു, എന്നാൽ ഇതിന് SSL/TLS-ന് നേറ്റീവ് പിന്തുണയില്ല. Hitch അല്ലെങ്കിൽ NGINX പോലുള്ള ഒരു SSL/TLS പ്രോക്സി ഉപയോഗിച്ച് നിങ്ങൾക്ക് വാർണിഷ് കാഷെക്കായി HTTPS പ്രവർത്തനക്ഷമമാക്കാം.

നിങ്ങൾക്ക് വാർണിഷ് കാഷെ ഒരു വെബ് ആപ്ലിക്കേഷൻ ഫയർവാൾ, DDoS അറ്റാക്ക് ഡിഫൻഡർ, ഹോട്ട്uലിങ്കിംഗ് പ്രൊട്ടക്ടർ, ലോഡ് ബാലൻസർ, ഇന്റഗ്രേഷൻ പോയിന്റ്, സിംഗിൾ സൈൻ-ഓൺ ഗേറ്റ്uവേ, ആധികാരികത, അംഗീകാര നയ സംവിധാനം, അസ്ഥിരമായ ബാക്കെൻഡുകൾക്കുള്ള ദ്രുത പരിഹാരം, HTTP അഭ്യർത്ഥന റൂട്ടർ എന്നിവയും ഉപയോഗിക്കാം.

8. സ്ക്വിഡ് കാഷിംഗ് പ്രോക്സി

ലിനക്സിനുള്ള മറ്റൊരു സ്വതന്ത്രവും ഓപ്പൺ സോഴ്uസും മികച്ചതും വ്യാപകമായി ഉപയോഗിക്കുന്നതുമായ പ്രോക്സിയും കാഷിംഗ് സൊല്യൂഷനുമാണ് സ്ക്വിഡ്. HTTP, HTTPS, FTP എന്നിവയുൾപ്പെടെയുള്ള ജനപ്രിയ നെറ്റ്uവർക്ക് പ്രോട്ടോക്കോളുകൾക്കായി പ്രോക്uസി, കാഷെ സേവനങ്ങൾ നൽകുന്ന ഫീച്ചറുകളാൽ സമ്പന്നമായ വെബ് പ്രോക്uസി കാഷെ സെർവർ സോഫ്uറ്റ്uവെയറാണിത്. ഇത് മറ്റ് UNIX പ്ലാറ്റ്uഫോമുകളിലും വിൻഡോസിലും പ്രവർത്തിക്കുന്നു.

വാർണിഷ് കാഷെ പോലെ, ഇത് ക്ലയന്റുകളിൽ നിന്ന് അഭ്യർത്ഥനകൾ സ്വീകരിക്കുകയും അവ നിർദ്ദിഷ്ട ബാക്കെൻഡ് സെർവറുകളിലേക്ക് കൈമാറുകയും ചെയ്യുന്നു. ബാക്കെൻഡ് സെർവർ പ്രതികരിക്കുമ്പോൾ, അത് ഉള്ളടക്കത്തിന്റെ ഒരു പകർപ്പ് ഒരു കാഷെയിൽ സംഭരിക്കുകയും ക്ലയന്റിലേക്ക് കൈമാറുകയും ചെയ്യുന്നു. ഇതേ ഉള്ളടക്കത്തിനായുള്ള ഭാവി അഭ്യർത്ഥനകൾ കാഷെയിൽ നിന്ന് നൽകപ്പെടും, അതിന്റെ ഫലമായി ക്ലയന്റിലേക്ക് വേഗത്തിൽ ഉള്ളടക്ക ഡെലിവറി ലഭിക്കും. അതിനാൽ പ്രകടനം മെച്ചപ്പെടുത്തുന്നതിന് ക്ലയന്റും സെർവറും തമ്മിലുള്ള ഡാറ്റാ ഫ്ലോ ഒപ്റ്റിമൈസ് ചെയ്യുകയും നെറ്റ്uവർക്ക് ട്രാഫിക് കുറയ്ക്കാനും ബാൻഡ്uവിഡ്ത്ത് സംരക്ഷിക്കാനും പതിവായി ഉപയോഗിക്കുന്ന ഉള്ളടക്കം കാഷെ ചെയ്യുന്നു.

പ്രോക്uസി സെർവറുകളുടെ ആശയവിനിമയ ശ്രേണികളിലൂടെ ലോഡ് വിതരണം ചെയ്യുക, വെബ് ഉപയോഗ പാറ്റേണുകളെക്കുറിച്ചുള്ള ഡാറ്റ നിർമ്മിക്കുക (ഉദാ. ഏറ്റവുമധികം സന്ദർശിച്ച സൈറ്റുകളെക്കുറിച്ചുള്ള സ്ഥിതിവിവരക്കണക്കുകൾ), പ്രോക്uസി ചെയ്uത സന്ദേശങ്ങൾ വിശകലനം ചെയ്യാനും പിടിച്ചെടുക്കാനും തടയാനും മാറ്റിസ്ഥാപിക്കാനും പരിഷ്uക്കരിക്കാനും നിങ്ങളെ പ്രാപ്uതമാക്കുന്നു.

റിച്ച് ആക്uസസ് കൺട്രോൾ, ഓതറൈസേഷൻ, ആധികാരികത, SSL/TLS പിന്തുണ, ആക്uറ്റിവിറ്റി ലോഗിംഗ് എന്നിവ പോലുള്ള സുരക്ഷാ സവിശേഷതകളെയും ഇത് പിന്തുണയ്ക്കുന്നു.

9. എൻജിഎൻഎക്സ്

വെബ് ഇൻഫ്രാസ്ട്രക്ചർ സജ്ജീകരിക്കുന്നു. ഇത് ഒരു HTTP സെർവർ, റിവേഴ്സ് പ്രോക്സി സെർവർ, ഒരു മെയിൽ പ്രോക്സി സെർവർ, ഒരു സാധാരണ TCP/UDP പ്രോക്സി സെർവർ എന്നിവയാണ്.

NGINX അടിസ്ഥാന കാഷിംഗ് കഴിവുകൾ വാഗ്ദാനം ചെയ്യുന്നു, അവിടെ കാഷെ ചെയ്ത ഉള്ളടക്കം ഡിസ്കിലെ സ്ഥിരമായ കാഷെയിൽ സൂക്ഷിക്കുന്നു. എൻuജിuഎൻuഎക്uസിലെ ഉള്ളടക്ക കാഷിംഗിനെക്കുറിച്ചുള്ള ആകർഷകമായ ഭാഗം, ഒറിജിനൽ സെർവറുകളിൽ നിന്ന് പുതിയ ഉള്ളടക്കം ലഭ്യമാക്കാൻ കഴിയാത്തപ്പോൾ അതിന്റെ കാഷെയിൽ നിന്ന് പഴകിയ ഉള്ളടക്കം നൽകുന്നതിന് കോൺഫിഗർ ചെയ്യാനാകും എന്നതാണ്.

HTTP അടിസ്ഥാന പ്രാമാണീകരണം, ഉപ-അഭ്യർത്ഥന ഫലത്തെ അടിസ്ഥാനമാക്കിയുള്ള പ്രാമാണീകരണം, JWT പ്രാമാണീകരണം, പ്രോക്uസിഡ് HTTP ഉറവിടങ്ങളിലേക്കുള്ള ആക്uസസ് പരിമിതപ്പെടുത്തൽ, ഭൂമിശാസ്ത്രപരമായ ലൊക്കേഷൻ വഴിയുള്ള ആക്uസസ് പരിമിതപ്പെടുത്തൽ എന്നിവയ്uക്ക് NGINX നിരവധി സുരക്ഷാ സവിശേഷതകൾ വാഗ്ദാനം ചെയ്യുന്നു.

ഇത് സാധാരണയായി റിവേഴ്സ് പ്രോക്സി, ലോഡ് ബാലൻസർ, എസ്എസ്എൽ ടെർമിനേറ്റർ/സെക്യൂരിറ്റി ഗേറ്റ്uവേ, ആപ്ലിക്കേഷൻ ആക്സിലറേറ്റർ/ഉള്ളടക്ക കാഷെ, ഒരു ആപ്ലിക്കേഷൻ സ്റ്റാക്കിൽ API ഗേറ്റ്uവേ എന്നിങ്ങനെ വിന്യസിച്ചിരിക്കുന്നു. സ്ട്രീമിംഗ് മീഡിയയ്ക്കും ഇത് ഉപയോഗിക്കുന്നു.

10. അപ്പാച്ചെ ട്രാഫിക് സെർവർ

അവസാനത്തേത് എന്നാൽ ഏറ്റവും പ്രധാനം, ഞങ്ങൾക്ക് HTTP/1.1, HTTP/2.0 എന്നിവയ്uക്കുള്ള പിന്തുണയുള്ള ഓപ്പൺ സോഴ്uസ്, വേഗതയേറിയതും സ്uകേലബിൾ ചെയ്യാവുന്നതും വിപുലീകരിക്കാവുന്നതുമായ കാഷിംഗ് പ്രോക്uസി സെർവറായ അപ്പാച്ചെ ട്രാഫിക് സെർവർ ഉണ്ട്. എന്റർപ്രൈസുകൾ, ISP-കൾ (ഇന്റർനെറ്റ് സെർവർ പ്രൊവൈഡർമാർ), നട്ടെല്ലുള്ള ദാതാക്കൾ എന്നിവയ്uക്കും അതിലേറെ കാര്യങ്ങൾക്കുമായി നെറ്റ്uവർക്കിന്റെ അരികിൽ പതിവായി ആക്uസസ് ചെയ്യപ്പെടുന്ന ഉള്ളടക്കം കാഷെ ചെയ്uത് നെറ്റ്uവർക്ക് കാര്യക്ഷമതയും പ്രകടനവും മെച്ചപ്പെടുത്തുന്നതിനാണ് ഇത് രൂപകൽപ്പന ചെയ്uതിരിക്കുന്നത്.

ഇത് HTTP/HTTPS ട്രാഫിക്കിന്റെ ഫോർവേഡും റിവേഴ്uസ് പ്രോക്uസിംഗും പിന്തുണയ്ക്കുന്നു. ഒന്നോ രണ്ടോ മോഡുകളിൽ ഒരേസമയം പ്രവർത്തിക്കാൻ ഇത് ക്രമീകരിച്ചിരിക്കാം. ഇത് പെർസിസ്റ്റന്റ് കാഷിംഗ്, പ്ലഗിൻ API-കൾ അവതരിപ്പിക്കുന്നു; ICP (ഇന്റർനെറ്റ് കാഷെ പ്രോട്ടോക്കോൾ), ESI (എഡ്ജ് സൈഡ് ഉൾപ്പെടുന്നു) എന്നിവയ്ക്കുള്ള പിന്തുണ; ജീവനോടെ നിലനിർത്തുക, കൂടാതെ മറ്റു പലതും.

സുരക്ഷയുടെ കാര്യത്തിൽ, ട്രാഫിക് സെർവർ ക്ലയന്റ് ആക്uസസ് നിയന്ത്രിക്കുന്നതിനെ പിന്തുണയ്uക്കുന്നു, പ്രോക്uസി കാഷെ ഉപയോഗിക്കാൻ അനുവദിക്കുന്ന ക്ലയന്റുകളെ കോൺഫിഗർ ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു, ക്ലയന്റുകൾക്കും തനിക്കുമിടയിലുള്ള കണക്ഷനുകൾക്കും തനിക്കും ഒറിജിൻ സെർവറിനുമിടയിലുള്ള കണക്ഷനുകൾക്കായി SSL അവസാനിപ്പിക്കൽ. ഒരു പ്ലഗിൻ, ലോഗിംഗ് (അതിന് ലഭിക്കുന്ന എല്ലാ അഭ്യർത്ഥനകളുടെയും അത് കണ്ടെത്തുന്ന എല്ലാ പിശകുകളുടെയും), നിരീക്ഷണം എന്നിവ വഴിയുള്ള പ്രാമാണീകരണത്തെയും അടിസ്ഥാന അംഗീകാരത്തെയും ഇത് പിന്തുണയ്ക്കുന്നു.

ട്രാഫിക് സെർവർ ഒരു വെബ് പ്രോക്സി കാഷെ, ഫോർവേഡ് പ്രോക്സി, റിവേഴ്സ് പ്രോക്സി, സുതാര്യമായ പ്രോക്സി, ലോഡ് ബാലൻസർ അല്ലെങ്കിൽ ഒരു കാഷെ ശ്രേണിയിൽ ഉപയോഗിക്കാം.

വെബ്uസൈറ്റുകളുടെയോ ആപ്ലിക്കേഷനുകളുടെയോ വേഗത വർദ്ധിപ്പിക്കുന്നതിന് പ്രാഥമികമായി രൂപകൽപ്പന ചെയ്uതിരിക്കുന്ന ഏറ്റവും പ്രയോജനപ്രദവും ദീർഘകാലമായി സ്ഥാപിതമായതുമായ വെബ് ഉള്ളടക്ക ഡെലിവറി സാങ്കേതികവിദ്യകളിൽ ഒന്നാണ് കാഷിംഗ്. നിങ്ങളുടെ സെർവർ ലോഡ്, ലേറ്റൻസി, നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് എന്നിവ കുറയ്ക്കാൻ ഇത് സഹായിക്കുന്നു, കാരണം കാഷെ ചെയ്uത ഡാറ്റ ക്ലയന്റുകൾക്ക് നൽകുന്നു, അങ്ങനെ ആപ്ലിക്കേഷൻ പ്രതികരണ സമയവും ക്ലയന്റുകൾക്കുള്ള ഡെലിവറി വേഗതയും മെച്ചപ്പെടുത്തുന്നു.

ഈ ലേഖനത്തിൽ, Linux സിസ്റ്റങ്ങളിൽ ഉപയോഗിക്കുന്നതിനുള്ള മികച്ച ഓപ്പൺ സോഴ്uസ് കാഷിംഗ് ടൂളുകൾ ഞങ്ങൾ അവലോകനം ചെയ്തു. ഇവിടെ ലിസ്റ്റുചെയ്തിട്ടില്ലാത്ത മറ്റ് ഓപ്പൺ സോഴ്uസ് കാഷിംഗ് ടൂളുകൾ നിങ്ങൾക്കറിയാമെങ്കിൽ, ചുവടെയുള്ള ഫീഡ്uബാക്ക് ഫോം വഴി ഞങ്ങളുമായി പങ്കിടുക. ഈ ലേഖനത്തെക്കുറിച്ചുള്ള നിങ്ങളുടെ ചിന്തകളും ഞങ്ങളുമായി പങ്കിടാം.