Knowledgebase Simplex instructiones operari cum Profitserver ministerium
main Knowledgebase Reducing servo onus

Reducing servo onus


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 difficultatum oneris magni in servitore solvendarum, commendamus ut diagnostica generalis servitoris peragatur . Si haec insufficiens est, analysis accuratior opum necessaria est. Ut instrumentum auxiliare, exploratio diariorum servitoris Linux utilis esse potest, cum ibi plerumque fons problematis inveniatur.

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)"

Prima solutio ad onus minuendum est inscriptiones meta "noindex" et "nofollow" in paginis quae non indigent indice uti. Altera solutio est fasciculus .htaccess , ubi inscriptiones ad machinas inquisitorias specificas pertinentes addendae sunt, exempli gratia, ut a Yandex et Google abscondantur:

SetEnvIfNoCase User-Agent "^Yandex" search_bot
SetEnvIfNoCase User-Agent "^Googlebot" search_bot
Order Allow,Deny
Allow from all
Deny from env=search_bot

Similiter, mutationes pro aliis machinis inquisitoriis faciendae sunt. Notandum est facultates .htaccess non solum ad indicem prohibendum limitatas esse. Suademus ut cum eius praecipuis proprietatibus in articulo melius cognoscas.

Usus Caching Occasus

Errores in celandi configuratione in servo constituti etiam onus magnum ducere possunt. Ad hunc parametrum optimizandum, mutationes correspondentes in fasciculis configurationis vel .htaccess faciendae sunt . In casu Apache, posterior optio praefertur, in Nginx – prior.

In servo Apache , fasciculum .htacess aperire et hunc codicem inserere debes :

<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf|doc|docx)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>

Deinde, modulum " Expires " hoc mandato perficite:

sudo a2enmod expires

Post quem, sileo telam server:

sudo service apache2 restart

Et modulus eu specificando;

ExpiresActive On

In servo Nginx , sufficit hunc codicem ad fasciculum configurationis 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 his optionibus factis, mandata " Allow" et "Deny" praeteribuntur.

Compressione data usura

Compressionem datorum per Gzip in servitoribus interretialibus Apache et Nginx activando, copia datorum inter servum et clientem transmissorum minuitur, quod efficaciam auget et tempus onerationis paginae interretialis minuit.

Ad Gzip in Apache activandum , modulum "mod_deflate" activare debes :

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 casu Nginx , configuratio fit in parte http fasciculi configurationis. Sequens codex addendus 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;

Similiter ac Apache , hic parametri compressionis pro certis generibus fasciculorum constituuntur. Post mutationes in ullo servorum interretialium factas, servitium denuo onerandum est:

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.

Utendo CDN (Rete Distributionis Contenti) . CDN potest fungi ut intermediarius inter servum interretialem tuum et usores, distribuens commeatum et contenta recondens ad effectum impetus DDoS mitigandum. CDN etiam possunt habere mechanismos tutelae DDoS incorporatos, inter quos distributio oneris et filtratio commeatus.

Configuratio muri ignis et systematum detectionis intrusionum (IDS/IPS) . Muri ignis configurari possunt ut commeatum secundum varia criteria, ut inscriptiones IP et portus, eligant. IDS/IPS mores commeatus abnormales detegere et conexiones suspectas impedire potest. Haec instrumenta efficacia esse possunt in vestigando et impediendo commeatum potentialiter noxium.

Configurans Apache et Nginx servientes telam mitigare impulsum DDoS impetus.

Pro Apache, modulum "mod_evasive " activamus . Ad hoc faciendum, commentarium remove vel hanc lineam in fasciculo configurationis "httpd.conf" vel "apache2.conf" adde :

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, modulum `mod_ratelimit` activamus :

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 Nginx similis est Apache . In fasciculo configurationis nginx.conf , hae directivae 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

Optimizatio interrogationum basis datorum MySQL in servo interretiali variis modis effici potest, et unus ex his est recta configuratio fasciculi configurationis. Typice, hic fasciculus my.cnf vel my.ini nominatur et in directorio /etc/ vel /etc/mysql/ situs est . Eum aperire et sequentes mutationes facere debes:

[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:

  1. 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.
  2. 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.
  3. vitare usura * Select. Solum illas columnas specificas quae ad interrogationem tuam vere necessariae sunt, loco omnes columnas in tabula deligendo.
  4. 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.
  5. Use JOIN ubi fieri solet efficacius. Item, curent ut columnae ad iungendum respondentes indices habeant.
  6. Use FINIS numerum ordinum reddituum restringere si certum numerum proventuum obtinere non debes.
  7. Considera eventus investigationis caching, praesertim si raro mutantur, ad onus servo reducendum.

In Mail Servo creat High Load in Servo

In hac sectione, explorabimus quomodo determinare possimus servum epistularum magnum onus experiri et quae gradus ad eius operationem optimizandam capi possint, inter quos sunt inspiciendae series nuntiorum et configuratio parametrorum servi. Incipe cum inspicienda serie nuntiorum. Utilitas "mailq" hoc adiuvare potest; ad eam activandam, mandatum correspondens in terminali inscribe:

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;

  1. 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.
  2. Reticuli unctiones perscriptio, inter quas configurationes firewall et regulas excitandas, ad vitandas caudices et ad partum epistularum accelerandum.
  3. Nuntium queue parametri configurare secundum onus servo. Hoc includere potest ponere maximam queue magnitudinem et timeouts.
  4. 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.
  5. 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.

❮ Articulus prior Certbot: Installing Sit scriptor Encrypt certificatorium
Articulus proximus ❯ Servo Load Diagnostics

Interroga nos de VPS

Semper parati sumus ad interrogata tua respondere quovis tempore diei ac noctis.