In hoc articulo, in quod augetur onus server occurrit, variis modis tractabimus ad optimize processus summus onus. Specialis cura in Apache/Nginx et MySQL optimizationis codice tribuetur, de caching instrumento auxiliario loquemur, necnon minas externas possibilis considerare, quales DDOS impetus et vias prohibendi.
Quare Servo Lond occurs
Priusquam ad optimizationem serviendam accedamus, necesse est accuratam analysin currentis oneris in facultates ducere. Hoc includit CPU onus, RAM usus, retis activitatem, aliosque ambitus clavos. Intellectus dynamicorum et cacumina onera permittit identidem utres et subsidia optimizing destinatio, ita stabilitatem et observantiam servientis infrastructuram augere.
Ad initialem sollicitudinem summi servientis onus ducendo commendamus diagnostica servo generali. Si hoc insufficiens est, accuratiorem analysis de opibus necesse est. Ut instrumentum auxiliarium explorans acta Linux Servo autem utile esse potest, sicut hoc est ubi quaestionis fons in pluribus invenitur.
Optimizing Apache / Nginx Servo
Augeri Servo Lond Ob Indexing
Onus auctum ob indexing in calculonis fieri potest, exempli gratia, cum tormenta quaesita magnum numerum paginarum in tuo situ lustrant. Hoc potest ducere ad augendam usum opum ministrantium et, consequenter, effectus tardus situs. Causa cognoscendi est secundum quid simplex; opus est tabellam quae sita est ad aperire:
/var/www/httpd-logs/sitename.access.log
Cum indicentur per tormenta quaesita, user viscus naturae sequentis videbit:
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)"
Ut prima solutio ad redigendum onus, meta tags uti potes "noindex" et "nofollow" in paginis quae indicentur non opus est. Secunda solutio est .htaccess fasciculus, ubi viscus ad certas inquisitiones pertinentes addere debet, exempli gratia, ab Yandex et Google abscondere:
SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
Order Allow,Deny
Allow from all
Deny from env=search_bot
Similiter emendationes faciendae sunt ad alias machinas quaerendas. Notandum quod facultates htaccessarum non limitantur ad solum interclusionis index. Praecipimus questus magis nota cum suis praecipuis notis in the articulus.
Usus Caching Occasus
Recta occasus caching servo in altum etiam onus ducere potest. Ad hunc modulum optimize, mutationes respondentes faciendae sunt in lima configuratione vel . .htaccess. In Apache, posterior optio potior est Nginx - illa.
ad quod Apache server, debes aperire .htacess file et inserere codice sequenti:
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf|doc|docx)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
Deinde, da Vivamus modulus per mandatum:
sudo a2enmod expires
Post quem, sileo telam server:
sudo service apache2 restart
Et modulus eu specificando;
ExpiresActive On
in nginx ministrante, sufficit hunc codicem ad limam schematis addere;
location ~* .(jpg|jpeg|gif|png|ico|css|swf|flv|doc|docx)$ {
root /var/www/yoursite.com;
}
Reload et officium praestare:
sudo service nginx restart
Nota quod cum his lectis Sinite et negare praescriptiones praetermisisse.
Compressione data usura
Enabling notitia compressionem per Gzip in Apache et Nginx servitores interretiales adiuvat reducere quantitatem notitiae inter servientem et clientem transmissam, quae perficiendo meliorem facit ac tempus paginae loading minuit.
Ad enable Gzip on Apache, vos postulo ut movere mod_deflate modulus:
sudo a2enmod deflate
Tum, sileo telam server:
sudo service apache2 restart
Ac denique sequentem stipitem adiiciam fasciculi configurationis seu .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>
Haec configuratio compressionem facit ad quaedam genera imaginum ac disables pro imaginibus.
In nginxConfiguratio occurrit in http angustos configurationis lima. Codice sequenti adiciendus est:
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;
similis Apache, hic parametri compressiones ad certa genera imaginum ponuntur. Postquam ad aliquos interretiales mutationes faciendas requiritur, servitium reload requiritur:
sudo service apache2 restart
Or
sudo service nginx restart
DDOS ascende in Servo
Princeps servo onus fieri potest ut ex impetu DDoS. Distinguendi praesentiam impetus DDoS fieri potest per vigilantiam subitum incrementum negotiationis, abnormes petitiones, et guttae servitutis effectus. Tigna recensens petita repetita ab uno IP inscriptionem vel portum intuens etiam indicare potest impetum possibilis DDoS. Multae cautiones tutelae sunt, sed solum de elementis disputabimus.
Usus CDN (Content Delivery Network). A CDN medium esse potest inter servitores interretiales et utentes, negotiationes distribuentes et captio contenta ad impetum mitigandam oppugnationis DDoS. CDNs etiam machinationes tutelae in DDoS aedificaverunt, inclusa distributione et onere percolando commercii.
Configurans firewalls et intrusionem deprehendendi systemata (IDS/IPS). Firewalls configurari possunt ad mercaturam eliquationem variis indiciis fundatam, sicut IP inscriptiones et portus. IDS/IPS deprehendere possunt abnormes mores negotiationis et impedit suspectos hospites. Instrumenta haec efficacia esse possunt in investigationibus et in potentia malitiosis negotiationis claudendis.
Configurans Apache et Nginx servientes telam mitigare impulsum DDoS impetus.
Ut solutio Apache, possimus mod_evasive modulus. Ad hoc faciendum, uncomment vel sequentem lineam add httpd.conf or apache2.conf configuratione file:
LoadModule evasive20_module modules/mod_evasive.so
In eodem fasciculo, scandalum uncinis addere debes:
<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>
Similiter strenuus the mod_ratelimit modulus:
LoadModule ratelimit_module modules/mod_ratelimit.so
et configurationem adde:
<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>
Configuratio for nginx similis est Apache. In nginx.conf Configurationis fasciculus, sequentes normae adhibendae sunt:
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;
...
}
}
Post singulas commutationes operarum, exonerare debent;
sudo systemctl restart apache2
Sequitur absolutio sacerdotis:
sudo systemctl restart nginx
Haec exempla solum fundamentalem conformationem praebent, quae ulteriori aptari potest secundum exigentias specificas et natura impetus.
Optimizing MySQL Queries
Optimising MySQL datorum inquisitiones de servo interretiali variis modis effici possunt, et una earum est propria conformationis fasciculi. Typice hic fasciculus nominatur my.cnf or my.ini et sita est in / Etc / or /etc/mysql/ presul. Opus est aperire et sequentes mutationes facere:
[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
Etiam praeterea suasiones consideremus quae faciliorem reddere possunt commercium cum datorum servo:
- Uti PERSEQUOR praecipe coram interrogatione SQL ad eius executionem resolvendam. Hoc tibi permittit ut consilium executionis quaesitum ac definias utri indices adhibeantur, quae tabulae lustrantur, etc.
- Indices notitiarum inquisitionum accelerant, ut indices proprie designati possunt signanter emendare inquisitionem faciendam. Attende ad columnas quae frequenter in usu sunt UBI or JOIN condiciones.
- vitare usura * Select. Solum illas columnas specificas quae ad interrogationem tuam vere necessariae sunt, loco omnes columnas in tabula deligendo.
- Fugientes munera in UBI conditiones. Munera per (ut LABOR, SUPERIOR, EGRESSUS, IUS) in UBI conditiones indices inutiles facere possunt. Conantur vitare suum directum usum in conditionibus.
- Use JOIN ubi fieri solet efficacius. Item, curent ut columnae ad iungendum respondentes indices habeant.
- Use FINIS numerum ordinum reddituum restringere si certum numerum proventuum obtinere non debes.
- Considera eventus investigationis caching, praesertim si raro mutantur, ad onus servo reducendum.
In Mail Servo creat High Load in Servo
In hac sectione explorare debebimus quomodo statuendum sit servo tabellariorum maximum onus experitur et quid gradus ad perficiendam operationem eius capi possint, inclusa reprimendo nuntium queue ac servo parametris conformans. Satus reprehendo verbo queue. The mailq utilitas adiuvari potest cum hoc, illud movere, congruenter mandatum in terminatio inire:
mailq
Hoc indice epistularum in queue, si quis fuerit, ostendet. Quisque nuntius ostendetur cum singulari identificante et informatione de statu mittendo. Similis effectus obtineri potest acta clientium recensendo.
In pluribus, summus onus incidit in eventum compromissi servientis cum incipit mittere spam. Attamen si inhibito administratore confidit cultorem ab extra petitum non esse et usores spamma non neglexisse, tempus est movere ad servo optimizing tabellarii. Hic sunt gradus qui te adiuvabunt;
- Cura, ut tui DNS dominici monumenta recte conformentur, comprehendo SPF, DKIMEt DMARC commemorat ad emendare partum mail et contra spamma protegat. Recta figura parametri in articulo reperiri potest mail server diagnostic.
- Reticuli unctiones perscriptio, inter quas configurationes firewall et regulas excitandas, ad vitandas caudices et ad partum epistularum accelerandum.
- Nuntium queue parametri configurare secundum onus servo. Hoc includere potest ponere maximam queue magnitudinem et timeouts.
- Considerate solutiones quas in hoc articulo ante tractavimus. Periodice optimize tabellariorum datorum datorum ad emendare effectum, uti machinationes caching accelerare inquisitionis et processus notitiarum, sicut DNS queries.
- Si servo electronico adhuc regulariter in magno onere incurrit, optiones scalas considera, qualia sunt solutiones nubecularum vel servorum electronicorum utentes.
Conclusio
Servo onere aucta directe afficit website onerantium celeritatem, tandem impacting experientiam et famam usoris in tormentis quaesitis. Ita efficaciter hoc onus administrandi partes praecipuas agit ut continuam obtineat functionem subsidii et eius accessibilitatem ad visitatores augendam.