ഈ ലേഖനത്തിൽ, സെർവർ ലോഡ് വർദ്ധിക്കുന്നത് എന്തുകൊണ്ടാണെന്ന് നമ്മൾ പരിശോധിക്കും, ഉയർന്ന ലോഡ് പ്രക്രിയകൾ ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിനുള്ള വിവിധ വഴികൾ ചർച്ച ചെയ്യും. അപ്പാച്ചെ/എൻജിൻഎക്സ്, മൈഎസ്ക്യുഎൽ എന്നിവയിലെ കോഡ് ഒപ്റ്റിമൈസേഷനിൽ പ്രത്യേക ശ്രദ്ധ നൽകും, ഒരു സഹായ ഉപകരണമായി കാഷിംഗിനെക്കുറിച്ച് നമ്മൾ സംസാരിക്കും, കൂടാതെ ഡിഡിഒഎസ് ആക്രമണങ്ങൾ പോലുള്ള സാധ്യമായ ബാഹ്യ ഭീഷണികളും അവ തടയാനുള്ള വഴികളും പരിഗണിക്കും.
സെർവർ ലോഡ് സംഭവിക്കുന്നത് എന്തുകൊണ്ട്?
സെർവർ ഒപ്റ്റിമൈസേഷനിലേക്ക് പോകുന്നതിനുമുമ്പ്, റിസോഴ്സുകളിലെ നിലവിലെ ലോഡിന്റെ സമഗ്രമായ വിശകലനം നടത്തേണ്ടത് ആവശ്യമാണ്. ഇതിൽ സിപിയു ലോഡ്, റാം ഉപയോഗം, നെറ്റ്വർക്ക് പ്രവർത്തനം, മറ്റ് പ്രധാന പാരാമീറ്ററുകൾ എന്നിവ അളക്കുന്നത് ഉൾപ്പെടുന്നു. ഡൈനാമിക്സും പീക്ക് ലോഡുകളും മനസ്സിലാക്കുന്നത് തടസ്സങ്ങൾ തിരിച്ചറിയാനും റിസോഴ്സ് അലോക്കേഷൻ ഒപ്റ്റിമൈസ് ചെയ്യാനും അനുവദിക്കുന്നു, അങ്ങനെ സെർവർ ഇൻഫ്രാസ്ട്രക്ചറിന്റെ സ്ഥിരതയും പ്രകടനവും വർദ്ധിപ്പിക്കുന്നു.
ഉയർന്ന സെർവർ ലോഡിന്റെ പ്രാരംഭ ട്രബിൾഷൂട്ടിംഗിനായി, ഒരു പൊതുവായ സെർവർ ഡയഗ്നോസ്റ്റിക്സ്. ഇത് അപര്യാപ്തമാണെങ്കിൽ, കൂടുതൽ വിശദമായ വിഭവങ്ങളുടെ വിശകലനം അത്യാവശ്യമാണ്. ഒരു സഹായ ഉപകരണമായി, പര്യവേക്ഷണം ചെയ്യുന്നത് ലിനക്സിന്റെ ലോഗുകൾ മിക്ക കേസുകളിലും പ്രശ്നത്തിന്റെ ഉറവിടം കണ്ടെത്തുന്നത് ഇവിടെയായതിനാൽ, സെർവർ സഹായകരമാകും.
അപ്പാച്ചെ/എൻജിൻഎക്സ് സെർവർ ഒപ്റ്റിമൈസ് ചെയ്യുന്നു
ഇൻഡെക്സിംഗ് കാരണം വർദ്ധിച്ച സെർവർ ലോഡ്
സെർവറിലെ ഇൻഡെക്സിംഗ് കാരണം ലോഡ് വർദ്ധിക്കുന്നത് സംഭവിക്കാം, ഉദാഹരണത്തിന്, സെർച്ച് എഞ്ചിനുകൾ നിങ്ങളുടെ സൈറ്റിലെ ധാരാളം പേജുകൾ സ്കാൻ ചെയ്യുമ്പോൾ. ഇത് സെർവർ വിഭവങ്ങളുടെ ഉപയോഗം വർദ്ധിപ്പിക്കുന്നതിനും തൽഫലമായി, സൈറ്റിന്റെ പ്രകടനം മന്ദഗതിയിലാക്കുന്നതിനും ഇടയാക്കും. കാരണം തിരിച്ചറിയുന്നത് താരതമ്യേന ലളിതമാണ്; നിങ്ങൾ ഇവിടെ സ്ഥിതിചെയ്യുന്ന ഫയൽ തുറക്കേണ്ടതുണ്ട്:
/var/www/httpd-logs/sitename.access.log
സെർച്ച് എഞ്ചിനുകൾ സൂചികയിലാക്കുമ്പോൾ, ഉപയോക്താവിന് ഇനിപ്പറയുന്ന സ്വഭാവത്തിലുള്ള എൻട്രികൾ കാണാൻ കഴിയും:
11.22.33.44 - - [Date and Time] "GET /your-page-path HTTP/1.1" 200 1234 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
ലോഡ് കുറയ്ക്കുന്നതിനുള്ള ആദ്യ പരിഹാരമായി, നിങ്ങൾക്ക് മെറ്റാ ടാഗുകളുടെ ക്രമീകരണം ഉപയോഗിക്കാം. "നോഇൻഡെക്സ്" ഒപ്പം "നോഫോളോ" സൂചികയിലാക്കേണ്ടതില്ലാത്ത പേജുകളിൽ. രണ്ടാമത്തെ പരിഹാരം .htaccess ഫയലിൽ, നിർദ്ദിഷ്ട സെർച്ച് എഞ്ചിനുകളുമായി ബന്ധപ്പെട്ട എൻട്രികൾ ചേർക്കേണ്ടതുണ്ട്, ഉദാഹരണത്തിന്, Yandex, Google എന്നിവയിൽ നിന്ന് മറയ്ക്കാൻ:
SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
Order Allow,Deny
Allow from all
Deny from env=search_bot
അതുപോലെ, മറ്റ് സെർച്ച് എഞ്ചിനുകൾക്കും എഡിറ്റുകൾ നടത്തേണ്ടതുണ്ട്. .htaccess-ന്റെ കഴിവുകൾ ഇൻഡെക്സിംഗ് തടയുന്നതിൽ മാത്രം ഒതുങ്ങുന്നില്ല എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്. അതിന്റെ പ്രധാന സവിശേഷതകളുമായി കൂടുതൽ പരിചയപ്പെടാൻ ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു ലേഖനം.
കാഷിംഗ് ക്രമീകരണങ്ങൾ ഉപയോഗിക്കുന്നു
സെർവറിലെ തെറ്റായ കാഷിംഗ് ക്രമീകരണങ്ങളും ഉയർന്ന ലോഡിന് കാരണമാകും. ഈ പാരാമീറ്റർ ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിന്, കോൺഫിഗറേഷൻ ഫയലുകളിൽ അനുബന്ധ മാറ്റങ്ങൾ വരുത്തേണ്ടതുണ്ട് അല്ലെങ്കിൽ .htaccess. അപ്പാച്ചെയുടെ കാര്യത്തിൽ, രണ്ടാമത്തെ ഓപ്ഷൻ അഭികാമ്യമാണ്, Nginx-ന് - ആദ്യത്തേത്.
എ അപ്പാച്ചെ സെർവർ, നിങ്ങൾ തുറക്കേണ്ടതുണ്ട് .htacess (ഹാറ്റസെസ്) ഫയൽ ചെയ്ത് ഇനിപ്പറയുന്ന കോഡ് ചേർക്കുക:
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf|doc|docx)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
തുടർന്ന്, പ്രവർത്തനക്ഷമമാക്കുക കാലഹരണപ്പെടുന്നു കമാൻഡ് ഉപയോഗിച്ച് മൊഡ്യൂൾ:
sudo a2enmod expires
അതിനുശേഷം, വെബ് സെർവർ പുനരാരംഭിക്കുക:
sudo service apache2 restart
കൂടാതെ വ്യക്തമാക്കി മൊഡ്യൂൾ സജീവമാക്കുക:
ExpiresActive On
ഒരു ന് നിക്കിക്സ് സെർവറിൽ, കോൺഫിഗറേഷൻ ഫയലിലേക്ക് ഇനിപ്പറയുന്ന കോഡ് ചേർത്താൽ മതി:
location ~* .(jpg|jpeg|gif|png|ico|css|swf|flv|doc|docx)$ {
root /var/www/yoursite.com;
}
ഒരു സർവീസ് റീലോഡ് നടത്തുക:
sudo service nginx restart
ഈ ക്രമീകരണങ്ങൾക്കൊപ്പം, അനുവദിക്കുക ഒപ്പം നിരസിക്കുക നിർദ്ദേശങ്ങൾ മറികടക്കും.
ഡാറ്റ കംപ്രഷൻ ഉപയോഗിക്കുന്നു
ഉപയോഗിച്ച് ഡാറ്റ കംപ്രഷൻ പ്രാപ്തമാക്കുന്നു ജിസിപ്പ് അപ്പാച്ചെ, എൻജിൻഎക്സ് വെബ് സെർവറുകളിൽ സെർവറിനും ക്ലയന്റിനുമിടയിൽ കൈമാറ്റം ചെയ്യപ്പെടുന്ന ഡാറ്റയുടെ അളവ് കുറയ്ക്കാൻ സഹായിക്കുന്നു, ഇത് പ്രകടനം മെച്ചപ്പെടുത്തുകയും വെബ് പേജ് ലോഡിംഗ് സമയം കുറയ്ക്കുകയും ചെയ്യുന്നു.
പ്രാപ്തമാക്കാൻ ജിസിപ്പ് on അപ്പാച്ചെ, നിങ്ങൾ സജീവമാക്കേണ്ടതുണ്ട് mod_deflate മൊഡ്യൂൾ:
sudo a2enmod deflate
തുടർന്ന്, വെബ് സെർവർ പുനരാരംഭിക്കുക:
sudo service apache2 restart
അവസാനമായി, കോൺഫിഗറേഷൻ ഫയലിലേക്കോ .htaccess ഫയലിലേക്കോ ഇനിപ്പറയുന്ന ബ്ലോക്ക് ചേർക്കുക:
<IfModule mod_deflate.c>
# Configure compression for specified file types
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript application/json
# If the browser matches the specified pattern, apply compression only to text/html files
BrowserMatch ^Mozilla/4 gzip-only-text/html
# If the browser matches the specified version patterns of Mozilla 4.0.6, 4.0.7, 4.0.8, disable compression
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# If the browser is MSIE (Internet Explorer), disable compression for all files except text/html
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# If the request contains the specified pattern (extensions of image files), disable compression
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip
</IfModule>
ഈ കോൺഫിഗറേഷൻ ചില തരം ഫയലുകൾക്ക് കംപ്രഷൻ പ്രാപ്തമാക്കുകയും ഇമേജുകൾക്ക് ഇത് പ്രവർത്തനരഹിതമാക്കുകയും ചെയ്യുന്നു.
ഈ സന്ദർഭത്തിൽ നിക്കിക്സ്, കോൺഫിഗറേഷൻ സംഭവിക്കുന്നത് http: കോൺഫിഗറേഷൻ ഫയലിന്റെ ബ്ലോക്ക്. ഇനിപ്പറയുന്ന കോഡ് ചേർക്കേണ്ടതുണ്ട്:
gzip on;
gzip_disable "msie6";
# Adds the Vary header, indicating that the response may change depending on the Accept-Encoding header value
gzip_vary on;
# Enables compression for any proxy servers
gzip_proxied any;
# Sets the compression level. A value of 6 provides a good balance between compression efficiency and resource use
gzip_comp_level 6;
# Sets the size of the buffer for compressed data (16 buffers of 8 kilobytes each)
gzip_buffers 16 8k;
# Specifies that data compression should be used only for HTTP version 1.1 and higher
gzip_http_version 1.1;
# Sets the file types that can be compressed
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
സമാനമായ അപ്പാച്ചെ, ഇവിടെ ചില തരം ഫയലുകൾക്കുള്ള കംപ്രഷൻ പാരാമീറ്ററുകൾ സജ്ജീകരിച്ചിരിക്കുന്നു. ഏതെങ്കിലും വെബ് സെർവറുകളിൽ മാറ്റങ്ങൾ വരുത്തിയ ശേഷം, ഒരു സർവീസ് റീലോഡ് ആവശ്യമാണ്:
sudo service apache2 restart
Or
sudo service nginx restart
സെർവറിൽ DDOS ആക്രമണം
ഒരു DDoS ആക്രമണത്തിന്റെ ഫലമായി ഉയർന്ന സെർവർ ലോഡ് ഉണ്ടാകാം. ട്രാഫിക്കിലെ പെട്ടെന്നുള്ള വർദ്ധനവ്, അസാധാരണമായ അഭ്യർത്ഥനകൾ, സെർവർ പ്രകടനത്തിലെ ഇടിവ് എന്നിവ നിരീക്ഷിക്കുന്നതിലൂടെ ഒരു DDoS ആക്രമണത്തിന്റെ സാന്നിധ്യം തിരിച്ചറിയാൻ കഴിയും. ഒരു IP വിലാസത്തിൽ നിന്നോ പോർട്ട് സ്കാനിംഗിൽ നിന്നോ ആവർത്തിച്ചുള്ള അഭ്യർത്ഥനകൾക്കായി ലോഗുകൾ പരിശോധിക്കുന്നത് ഒരു സാധ്യതയുള്ള DDoS ആക്രമണത്തെ സൂചിപ്പിക്കും. നിരവധി സംരക്ഷണ നടപടികളുണ്ട്, പക്ഷേ ഞങ്ങൾ അടിസ്ഥാനകാര്യങ്ങൾ മാത്രമേ ചർച്ച ചെയ്യുകയുള്ളൂ.
ഒരു CDN (ഉള്ളടക്ക ഡെലിവറി നെറ്റ്വർക്ക്) ഉപയോഗിക്കുന്നു. ഒരു CDN നിങ്ങളുടെ വെബ് സെർവറിനും ഉപയോക്താക്കൾക്കും ഇടയിൽ ഒരു ഇടനിലക്കാരനായി പ്രവർത്തിക്കും, ഒരു DDoS ആക്രമണത്തിന്റെ ആഘാതം ലഘൂകരിക്കുന്നതിന് ട്രാഫിക് വിതരണം ചെയ്യുകയും ഉള്ളടക്കം കാഷിംഗ് ചെയ്യുകയും ചെയ്യും. ലോഡ് ഡിസ്ട്രിബ്യൂഷൻ, ട്രാഫിക് ഫിൽട്ടറിംഗ് എന്നിവയുൾപ്പെടെയുള്ള ബിൽറ്റ്-ഇൻ DDoS സംരക്ഷണ സംവിധാനങ്ങളും CDN-കളിൽ ഉണ്ടായിരിക്കാം.
ഫയർവാളുകളും നുഴഞ്ഞുകയറ്റം കണ്ടെത്തൽ സംവിധാനങ്ങളും (IDS/IPS) ക്രമീകരിക്കൽ. IP വിലാസങ്ങൾ, പോർട്ടുകൾ തുടങ്ങിയ വിവിധ മാനദണ്ഡങ്ങൾ അടിസ്ഥാനമാക്കി ട്രാഫിക് ഫിൽട്ടർ ചെയ്യുന്നതിന് ഫയർവാളുകൾ കോൺഫിഗർ ചെയ്യാൻ കഴിയും. IDS/IPS-ന് അസാധാരണമായ ട്രാഫിക് സ്വഭാവം കണ്ടെത്താനും സംശയാസ്പദമായ കണക്ഷനുകൾ തടയാനും കഴിയും. ക്ഷുദ്രകരമായ ട്രാഫിക് ട്രാക്ക് ചെയ്യുന്നതിനും തടയുന്നതിനും ഈ ഉപകരണങ്ങൾ ഫലപ്രദമാകും.
DDoS ആക്രമണങ്ങളുടെ ആഘാതം ലഘൂകരിക്കുന്നതിന് Apache, Nginx വെബ് സെർവറുകൾ കോൺഫിഗർ ചെയ്യുന്നു.
അപ്പാച്ചിക്ക് ഒരു പരിഹാരമായി, ഞങ്ങൾ പ്രാപ്തമാക്കുന്നു mod_evasive മൊഡ്യൂൾ. ഇത് ചെയ്യുന്നതിന്, താഴെ പറയുന്ന വരി കമന്റ് ചെയ്യുകയോ ചേർക്കുകയോ ചെയ്യുക. httpd.conf or apache2.conf കോൺഫിഗറേഷൻ ഫയൽ:
LoadModule evasive20_module modules/mod_evasive.so
അതേ ഫയലിൽ, നിങ്ങൾ ഒരു ക്രമീകരണ ബ്ലോക്ക് ചേർക്കേണ്ടതുണ്ട്:
<IfModule mod_evasive20.c>
# Hash table size for storing request information
DOSHashTableSize 3097
# Number of requests to one page before activating protection
DOSPageCount 2
DOSPageInterval 1
# Number of requests to all pages before activating protection
DOSSiteCount 50
DOSSiteInterval 1
# Blocking period in seconds for IP addresses
DOSBlockingPeriod 10
</IfModule>
അതുപോലെ, നമ്മൾ സജീവമാക്കുന്നത് മോഡ്_റേറ്റ് പരിധി മൊഡ്യൂൾ:
LoadModule ratelimit_module modules/mod_ratelimit.so
കൂടാതെ കോൺഫിഗറേഷൻ ചേർക്കുക:
<IfModule mod_ratelimit.c>
# Setting the output filter for rate limiting (Rate Limit)
SetOutputFilter RATE_LIMIT
# Beginning of the settings block for the location "/login"
<Location "/login">
# Setting the environment variable rate-limit with a value of 1
SetEnv rate-limit 1
# Ending of the settings block for the location "/login"
</Location>
</IfModule>
എന്നതിനായുള്ള കോൺഫിഗറേഷൻ നിക്കിക്സ് സമാനമാണ് അപ്പാച്ചെ. എസ് nginx.conf കോൺഫിഗറേഷൻ ഫയലിൽ, ഇനിപ്പറയുന്ന നിർദ്ദേശങ്ങൾ ഉപയോഗിക്കേണ്ടതുണ്ട്:
http {
...
# Defining a zone for connection limits
limit_conn_zone $binary_remote_addr zone=addr:10m;
# Defining a zone for request limits
limit_req_zone $binary_remote_addr zone=req_zone:10m rate=1r/s;
server {
...
# Configuring connection limits
limit_conn addr 10;
# Configuring request limits
limit_req zone=req_zone burst=5;
...
}
}
ഓരോ സേവനത്തിലും മാറ്റങ്ങൾ വരുത്തിയ ശേഷം, അവ വീണ്ടും ലോഡുചെയ്യേണ്ടതുണ്ട്:
sudo systemctl restart apache2
അഥവാ:
sudo systemctl restart nginx
ഈ ഉദാഹരണങ്ങൾ ഒരു അടിസ്ഥാന കോൺഫിഗറേഷൻ മാത്രമേ നൽകുന്നുള്ളൂ, നിർദ്ദിഷ്ട ആവശ്യകതകളും ആക്രമണങ്ങളുടെ സ്വഭാവവും അനുസരിച്ച് ഇത് കൂടുതൽ പൊരുത്തപ്പെടുത്താൻ കഴിയും.
MySQL അന്വേഷണങ്ങൾ ഒപ്റ്റിമൈസ് ചെയ്യുന്നു
ഒരു വെബ് സെർവറിൽ MySQL ഡാറ്റാബേസ് അന്വേഷണങ്ങൾ ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് വിവിധ രീതികളിൽ നേടാം, അതിലൊന്നാണ് കോൺഫിഗറേഷൻ ഫയലിന്റെ ശരിയായ കോൺഫിഗറേഷൻ. സാധാരണയായി, ഈ ഫയലിന് my.cnf or my.ini എന്നിവിടങ്ങളിൽ സ്ഥിതി ചെയ്യുന്നു /തുടങ്ങിയവ/ or /etc/mysql/ ഡയറക്ടറി. നിങ്ങൾ അത് തുറന്ന് ഇനിപ്പറയുന്ന മാറ്റങ്ങൾ വരുത്തേണ്ടതുണ്ട്:
[mysqld]
# Location of the file for recording slow queries. Be sure to replace it with your path
log-slow-queries = /var/log/mariadb/slow_queries.log
# Threshold time for considering slow queries (in seconds)
long_query_time = 5
# Enabling recording of queries that do not use indexes
log-queries-not-using-indexes = 1
# Disabling query caching
query_cache_size = 0
query_cache_type = 0
query_cache_limit = 1M
# Size of temporary tables
tmp_table_size = 16M
max_heap_table_size = 16M
# Size of the thread cache
thread_cache_size = 16
# Disabling name resolving
skip-name-resolve = 1
# Size of the InnoDB buffer pool. Set to 50-70% of available RAM
innodb_buffer_pool_size = 800M
# Size of the InnoDB log file
innodb_log_file_size = 200M
സെർവർ ഡാറ്റാബേസുമായുള്ള ആശയവിനിമയം സുഗമമാക്കാൻ കഴിയുന്ന കൂടുതൽ ശുപാർശകളും നമുക്ക് പരിഗണിക്കാം:
- ഉപയോഗിക്കുക വിശദീകരിക്കുക ഒരു SQL അന്വേഷണത്തിന് മുമ്പായി അതിന്റെ നിർവ്വഹണം വിശകലനം ചെയ്യുന്നതിനുള്ള കമാൻഡ് നൽകുക. അന്വേഷണത്തിനായുള്ള ഒരു നിർവ്വഹണ പദ്ധതി ലഭിക്കാനും ഏതൊക്കെ സൂചികകളാണ് ഉപയോഗിക്കുന്നതെന്നും ഏതൊക്കെ പട്ടികകൾ സ്കാൻ ചെയ്യുമെന്നും നിർണ്ണയിക്കാനും ഇത് നിങ്ങളെ അനുവദിക്കുന്നു.
- സൂചികകൾ ഡാറ്റാ തിരയലിനെ വേഗത്തിലാക്കുന്നു, അതിനാൽ ശരിയായി രൂപകൽപ്പന ചെയ്ത സൂചികകൾക്ക് അന്വേഷണ പ്രകടനം ഗണ്യമായി മെച്ചപ്പെടുത്താൻ കഴിയും. പതിവായി ഉപയോഗിക്കുന്ന കോളങ്ങളിൽ ശ്രദ്ധ ചെലുത്തുക എവിടെ or ചേരുക അവസ്ഥ.
- ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുക തിരഞ്ഞെടുക്കുക *. ഒരു പട്ടികയിലെ എല്ലാ നിരകളും തിരഞ്ഞെടുക്കുന്നതിന് പകരം, നിങ്ങളുടെ അന്വേഷണത്തിന് ശരിക്കും ആവശ്യമുള്ള നിരകൾ മാത്രം വ്യക്തമാക്കുക.
- ഫംഗ്ഷനുകൾ ഉപയോഗിക്കുന്നത് ഒഴിവാക്കുക എവിടെ വ്യവസ്ഥകൾ. ഫംഗ്ഷനുകൾ ഉപയോഗിക്കുന്നു (ഉദാഹരണത്തിന് താഴത്തെ, മുകളിലെ, ഇടത്തെ, ശരി) ൽ എവിടെ വ്യവസ്ഥകൾ സൂചികകളെ ഉപയോഗശൂന്യമാക്കും. വ്യവസ്ഥകളിൽ അവയുടെ നേരിട്ടുള്ള ഉപയോഗം ഒഴിവാക്കാൻ ശ്രമിക്കുക.
- ഉപയോഗം ഇൻജെർ ജോയിൻ സാധ്യമാകുന്നിടത്തെല്ലാം, കാരണം ഇത് സാധാരണയായി കൂടുതൽ കാര്യക്ഷമമാണ്. കൂടാതെ, ചേരുന്നതിനുള്ള അനുബന്ധ നിരകളിൽ സൂചികകൾ ഉണ്ടെന്ന് ഉറപ്പാക്കുക.
- ഉപയോഗം പരിധി ഒരു നിശ്ചിത എണ്ണം ഫലങ്ങൾ മാത്രം ലഭിക്കണമെങ്കിൽ, തിരികെ നൽകുന്ന വരികളുടെ എണ്ണം നിയന്ത്രിക്കാൻ.
- സെർവർ ലോഡ് കുറയ്ക്കുന്നതിന്, കാഷിംഗ് അന്വേഷണ ഫലങ്ങൾ പരിഗണിക്കുക, പ്രത്യേകിച്ച് അവ അപൂർവ്വമായി മാറുകയാണെങ്കിൽ.
മെയിൽ സെർവർ സെർവറിൽ ഉയർന്ന ലോഡ് സൃഷ്ടിക്കുന്നു.
ഈ വിഭാഗത്തിൽ, മെയിൽ സെർവറിന് ഉയർന്ന ലോഡ് അനുഭവപ്പെടുന്നുണ്ടെന്ന് എങ്ങനെ നിർണ്ണയിക്കാമെന്നും അതിന്റെ പ്രവർത്തനം ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിന് എന്തെല്ലാം നടപടികൾ സ്വീകരിക്കാമെന്നും നമ്മൾ പര്യവേക്ഷണം ചെയ്യും, സന്ദേശ ക്യൂ പരിശോധിക്കുന്നതും സെർവർ പാരാമീറ്ററുകൾ ക്രമീകരിക്കുന്നതും ഉൾപ്പെടെ. സന്ദേശ ക്യൂ പരിശോധിച്ചുകൊണ്ട് ആരംഭിക്കുക. mailq യൂട്ടിലിറ്റിക്ക് ഇതിന് സഹായിക്കാനാകും, ഇത് സജീവമാക്കുന്നതിന്, ടെർമിനലിൽ അനുബന്ധ കമാൻഡ് നൽകുക:
mailq
ഇത് ക്യൂവിലുള്ള സന്ദേശങ്ങളുടെ ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കും, എന്തെങ്കിലും ഉണ്ടെങ്കിൽ. ഓരോ സന്ദേശവും അതിന്റേതായ സവിശേഷ ഐഡന്റിഫയറും അയച്ച സ്റ്റാറ്റസിനെക്കുറിച്ചുള്ള വിവരങ്ങളും സഹിതം പ്രദർശിപ്പിക്കും. മെയിൽ ക്ലയന്റ് ലോഗുകൾ അവലോകനം ചെയ്യുന്നതിലൂടെയും സമാനമായ ഒരു ഫലം ലഭിക്കും.
മിക്ക സാഹചര്യങ്ങളിലും, സെർവർ സ്പാം അയയ്ക്കാൻ തുടങ്ങുമ്പോൾ, അത് തടസ്സപ്പെടുമ്പോൾ ഉയർന്ന ലോഡ് സംഭവിക്കുന്നു. എന്നിരുന്നാലും, പരിശോധിച്ചതിന് ശേഷം സെർവർ പുറത്തു നിന്ന് ആക്രമിക്കപ്പെട്ടിട്ടില്ലെന്നും ഉപയോക്താക്കൾ സ്പാം അവഗണിക്കുന്നില്ലെന്നും അഡ്മിനിസ്ട്രേറ്റർക്ക് ഉറപ്പുണ്ടെങ്കിൽ, മെയിൽ സെർവർ ഒപ്റ്റിമൈസ് ചെയ്യുന്നതിലേക്ക് നീങ്ങേണ്ട സമയമാണിത്. സഹായിക്കുന്ന ഘട്ടങ്ങൾ ഇതാ:
- നിങ്ങളുടെ ഡൊമെയ്നിന്റെ DNS റെക്കോർഡുകൾ ശരിയായി കോൺഫിഗർ ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക, അതിൽ ഇവ ഉൾപ്പെടുന്നു എസ്പിഎഫ്, ഡി.കെ.ഐ.എം, ഒപ്പം ദ്മര്ച് മെയിൽ ഡെലിവറി മെച്ചപ്പെടുത്തുന്നതിനും സ്പാമിൽ നിന്ന് പരിരക്ഷിക്കുന്നതിനുമുള്ള റെക്കോർഡുകൾ. പാരാമീറ്ററുകളുടെ ശരിയായ കോൺഫിഗറേഷൻ എന്ന ലേഖനത്തിൽ കാണാം. മെയിൽ സെർവർ ഡയഗ്നോസ്റ്റിക്സ്.
- ബ്ലോക്കുകൾ ഒഴിവാക്കുന്നതിനും മെയിൽ ഡെലിവറി വേഗത്തിലാക്കുന്നതിനും ഫയർവാൾ കോൺഫിഗറേഷനും റൂട്ടിംഗ് നിയമങ്ങളും ഉൾപ്പെടെയുള്ള നെറ്റ്വർക്ക് ക്രമീകരണങ്ങൾ പരിശോധിക്കുക.
- സെർവർ ലോഡ് അനുസരിച്ച് സന്ദേശ ക്യൂ പാരാമീറ്ററുകൾ കോൺഫിഗർ ചെയ്യുക. പരമാവധി ക്യൂ വലുപ്പവും സമയപരിധിയും സജ്ജീകരിക്കുന്നത് ഇതിൽ ഉൾപ്പെട്ടേക്കാം.
- ഈ ലേഖനത്തിൽ നമ്മൾ മുമ്പ് ചർച്ച ചെയ്ത പരിഹാരങ്ങൾ പരിഗണിക്കുക. പ്രകടനം മെച്ചപ്പെടുത്തുന്നതിന് മെയിൽ സെർവർ ഡാറ്റാബേസ് ഇടയ്ക്കിടെ ഒപ്റ്റിമൈസ് ചെയ്യുക, DNS അന്വേഷണങ്ങൾ പോലുള്ള ഡാറ്റ തിരയലും പ്രോസസ്സിംഗും വേഗത്തിലാക്കാൻ കാഷിംഗ് സംവിധാനങ്ങൾ ഉപയോഗിക്കുക.
- മെയിൽ സെർവർ ഇപ്പോഴും പതിവായി ഉയർന്ന ലോഡ് നേരിടുന്നുണ്ടെങ്കിൽ, മെയിൽ സെർവറുകളുടെ ഒരു ക്ലസ്റ്റർ അല്ലെങ്കിൽ ക്ലൗഡ് സൊല്യൂഷനുകൾ ഉപയോഗിക്കുന്നത് പോലുള്ള സ്കെയിലിംഗ് ഓപ്ഷനുകൾ പരിഗണിക്കുക.
തീരുമാനം
വർദ്ധിച്ച സെർവർ ലോഡ് വെബ്സൈറ്റ് ലോഡിംഗ് വേഗതയെ നേരിട്ട് ബാധിക്കുന്നു, ഇത് ആത്യന്തികമായി ഉപയോക്തൃ അനുഭവത്തെയും സെർച്ച് എഞ്ചിനുകളിലെ പ്രശസ്തിയെയും ബാധിക്കുന്നു. അതിനാൽ, ഈ ലോഡ് ഫലപ്രദമായി കൈകാര്യം ചെയ്യുന്നത് ഉറവിടത്തിന്റെ തുടർച്ചയായ പ്രവർത്തനം ഉറപ്പാക്കുന്നതിലും സന്ദർശകർക്ക് അതിന്റെ പ്രവേശനക്ഷമത വർദ്ധിപ്പിക്കുന്നതിലും പ്രധാന പങ്ക് വഹിക്കുന്നു.