Apache optimizācija zemas klases VPS operētājsistēmā Ubuntu 14.04

Apache ir ļoti viegli instalēt un inicializēt, taču tas ir aprīkots ar daudziem iepriekš instalētiem moduļiem, un tādēļ, darbojoties ar zemu RAM VPS, var rasties veiktspējas problēmas.

Tāpēc ne vienmēr ir nepieciešams lielāks serveris, bet jūs varat vienkārši pareizi konfigurēt Apache iestatījumus un nodrošināt vislabāko iespējamo veiktspēju. Šeit ir dažas lietas, kas jums jādara, lai to paveiktu.

Šī apmācība ir paredzēta Ubuntu 14.04 LTS, taču arī principi ir līdzīgi iepriekšējām versijām.


1. Atspējojiet Apache moduļus

Jūs varat redzēt sarakstu ar visiem moduļiem, kas instalēti ar komandu, ls /etc/apache2/mods-available/un visiem moduļiem, kas pašlaik ir aktīvi ar ls /etc/apache2/mods-enabled/.

Sākotnējā Apache instalācijā pēc noklusējuma ir iespējoti 15 vai vairāk moduļi. To ir pārāk daudz, un vairums no tiem nav vajadzīgi.

Pirmkārt, jums ir jāizveido visu pašlaik aktīvo moduļu saraksts un jāsaglabā tas turpmākai uzziņai gadījumam, ja atspējojat kaut ko nepieciešamo un jums tas ir jāiespējo atkārtoti. Pēc tam vienkārši atspējojiet moduļus pa vienam ar komandu (izmantojot kā piemēru moduleName):

sudo a2dismod moduleName

... un restartējiet Apache pēc katrām izmaiņām, lai redzētu, vai nav radusies kāda kļūda.

Daži moduļi, kurus vajadzētu atspējot, ja tie nav nepieciešami, ir:

  • PHP
  • SSL
  • Pārrakstīt
  • Perl
  • Python

Pēc moduļa atspējošanas un Apache konfigurācijas atkārtotas ielādēšanas varat pārbaudīt, vai nav kļūdu, atverot Apache kļūdu žurnālu ar teksta redaktoru, piemēram, nano.

sudo nano /var/log/apache2/error.log

Ja tiek parādīta kļūda, vienkārši atkārtoti iespējojiet atbilstošo moduli, izmantojot:

sudo a2enmod moduleName

Pēc tam vēlreiz restartējiet Apache, līdz tiek sakārtots minimālais saraksts!


2. Iestatiet mpm_prefork

Izmantojot noklusējuma Apache konfigurāciju (kas nav labi līdzsvarota maziem serveriem), atmiņa var tikt ātri iztukšota un mākoņa serveris var tikt pārslogots. Tas izraisīs tīmekļa lapas nepārtrauktas ielādes stāvokli. Visticamāk, serveris uzturēs šos mirušos Apache procesus aktīvus, mēģinot bez vajadzības apkalpot saturu, samazinot apkalpošanai pieejamo procesu skaitu.

Lai atrisinātu šo problēmu, vispirms ir jānoskaidro, cik daudz RAM ir nepieciešams jūsu serverim, izņemot Apache, un vidējo atmiņas apjomu, ko izmanto Apache procesi.

Kamēr darbojas Apache, atveriet servera augšējo komandu.

top -bn 1

Rezultātu tabulā:

  • pievienojiet skaitļus kolonnā RES katram procesam, izņemot apache2, un pēc tam noņemiet to no kopējā RAM apjoma. Pieņemsim, ka jūs saņemat 600 MB .
  • iegūt vidējo no visiem apache2 procesiem . Pieņemsim, ka iegūstiet 20 MB .
  • tad vienkārši veiciet dalīšanu 600/20 = 30 maksimāli Apache procesus

Nākamajā darbībā rediģējiet mpm_prefork moduļa konfigurācijas failu:

sudo nano /etc/apache2/mods-enabled/mpm_prefork.conf

Tas var izskatīties šādi:

<IfModule mpm_prefork_module>
    StartServers             2
    MinSpareServers          2
    MaxSpareServers          5
    MaxRequestWorkers        30
    MaxConnectionsPerChild   0
</IfModule>

Kur:

  • StartServers: jāsāk servera procesu skaits.
  • MinSpareServers: minimālais rezerves servera procesu skaits.
  • MaxSpareServers: maksimālais rezerves servera procesu skaits.
  • MaxRequestWorkers: maksimālais servera procesu skaits, ko atļauts sākt.
  • MaxConnectionsPerChild: maksimālais pieprasījumu skaits, ko apkalpo servera process.

Jo MaxRequestWorkers iestatījumu, jums ir jāmaina tā, lai kāds jums atrodams nodaļā augstāk.

Tagad, ja jūsu VPS tiek pārslogots un sasniegs maksimālo klientu skaitu, ko tas var apkalpot vienlaikus, tas apkalpos šos un citi lietotāji vienkārši ātri nedarbosies. Pēc tam viņi var atkārtoti ielādēt lapu, lai mēģinātu vēlreiz. Daudz labāk ir ātri aizvērt šos savienojumus, bet atstāt serveri labā stāvoklī, nevis palikt atvērtiem uz visiem laikiem.


3. Samaziniet žurnālu skaitu

Lai palielinātu veiktspēju, noteikti varat reģistrēt mazāk informācijas. Noklusējuma Apache konfigurācijā LogLevel iestatījums ir iestatīts uz brīdinājumu . Varat to mainīt uz kļūdu, lai saglabātu tikai kļūdu ziņojumus.

Atveriet Apache konfigurācijas failu:

sudo nano /etc/apache2/apache2.conf

Atrodiet līniju:

LogLevel warn

... un mainiet to uz:

LogLevel error

Pēc tam saglabājiet failu un restartējiet Apache ar:

sudo service apache2 restart

Noklusējuma fails, kurā Apache saglabā žurnālus, ir /var/log/apache2/error.log .


4. Apsveriet iespēju aizstāt mod_php

Ja izmantojat PHP vietni, pastāv liela iespēja, ka izmantojat mod_php moduli. Šis modulis var likt katram Apache pakārtotajam procesam izmantot vairāk nekā 100 MB RAM pat tad, ja tiek pieprasīti statiski resursi, piemēram, attēli, css un JavaScript.

Lieliska alternatīva ir php-fpm modulis, kas ir atsevišķs process, kas izmanto fastcgi protokolu. Izmantojot php-fpm, Apache procesu atmiņa var samazināties līdz 10 MB statiskam saturam un 60 MB dinamiskam.

Lai gan ar šīm izmaiņām var būt nedaudz grūti panākt, lai viss darbotos, tas ir pūļu vērts.


5. Apsveriet iespēju aizstāt mpm_prefork

Lielākajā daļā Apache konfigurāciju tiek izmantots modulis mpm_prefork, kas ir pavediens drošs un izmanto vairākus pakārtotos procesus ar vienu pavedienu, un katrs process vienlaikus apstrādā vienu savienojumu. Ja jums nav nepieciešami ārējie moduļi, piemēram, PHP vai Rails, varat to aizstāt ar moduli apache2-mpm-worker , kas bieži ir ātrāks. Darbinieka MPM izmanto vairākus pakārtotus procesus ar daudziem pavedieniem, un katrs pavediens vienlaikus apstrādā vienu savienojumu.

Lai iespējotu darbinieka moduli, tas ir jāinstalē.

sudo apt-get install apache2-mpm-worker

Šī komanda atinstalēs mpm_prefork , mos_php un citus nesaderīgus pievienojumprogrammu moduļus.


Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

VULTR nesen veica izmaiņas, un tagad visam vajadzētu darboties labi, ja ir iespējots NetworkManager. Ja vēlaties atspējot

Docker CE instalēšana Ubuntu 16.04

Docker CE instalēšana Ubuntu 16.04

Vai izmantojat citu sistēmu? Docker ir lietojumprogramma, kas ļauj izvietot programmas, kas tiek darbinātas kā konteineri. Tas tika uzrakstīts populārajā Go programmā

Netīrās govs eksploīta ielāgošana vietnē CentOS

Netīrās govs eksploīta ielāgošana vietnē CentOS

Kas ir netīrā govs (CVE-2016-5195)? Netīrās govs ievainojamība tiek izmantota, izmantojot to, kā Linux apstrādā kodu. Tas ļauj nepievilinātam lietotājam gai

Iestatiet laika joslu un NTP operētājsistēmā Ubuntu 14.04

Iestatiet laika joslu un NTP operētājsistēmā Ubuntu 14.04

Vultr serveri var nebūt izvietoti ar jūsu serverī nepieciešamo laika joslu/datumu/laiku. Par laimi mēs varam manuāli iestatīt laika joslu, lai novērstu problēmas

Rust instalēšana Ubuntu 14.04

Rust instalēšana Ubuntu 14.04

Rust, plaši pazīstama kā Rust-Lang, ir sistēmas programmēšanas valoda, ko izstrādā Mozilla un atbalsta LLVM. Rūsa ir pazīstama ar programmu novēršanu

Kā instalēt osTicket uz FreeBSD 12

Kā instalēt osTicket uz FreeBSD 12

Vai izmantojat citu sistēmu? osTicket ir atvērtā koda klientu atbalsta biļešu sistēma. osTicket pirmkods ir publiski mitināts vietnē Github. Šajā apmācībā

Darbs ar Linux iespējām

Darbs ar Linux iespējām

Ievads Linux iespējas ir īpaši atribūti Linux kodolā, kas piešķir procesiem un binārajiem izpildāmajiem failiem īpašas privilēģijas, kas ir normālas.

Kā instalēt JuliaLang Ubuntu 17.04

Kā instalēt JuliaLang Ubuntu 17.04

Julia, plaši pazīstama kā JuliaLang, ir programmēšanas valoda skaitliskajai skaitļošanai. Džūlija ir tikpat ātra kā C, taču tas neupurē lasāmību

Augsta pieejamība, izmantojot privāto tīklu Ubuntu 16.04 ar Keepalived

Augsta pieejamība, izmantojot privāto tīklu Ubuntu 16.04 ar Keepalived

Dažām augstas pieejamības arhitektūrām nepieciešama peldoša IP adrese. Šī funkcionalitāte ir pieejama Vultr platformā, tiklīdz ir izveidots privātais tīkls

Iestatiet tikai SFTP lietotāju kontus Ubuntu 14

Iestatiet tikai SFTP lietotāju kontus Ubuntu 14

Ievads Dažos gadījumos ir nepieciešams izveidot lietotājus ar lasīšanas un rakstīšanas piekļuvi vienam direktorijam, tikai izmantojot FTP. Šis raksts jums parādīs, kā t

Kā iestatīt Node.js pastāvīgās lietojumprogrammas Ubuntu 16.04

Kā iestatīt Node.js pastāvīgās lietojumprogrammas Ubuntu 16.04

Node.js lietojumprogrammas ir populāras to mērogošanas spējas dēļ. Vairāku vienlaicīgu procesu palaišana vairākos serveros nodrošina mazāku latentumu un ilgāku darbības laiku

Kā instalēt SuiteCRM operētājsistēmā Ubuntu 16.04

Kā instalēt SuiteCRM operētājsistēmā Ubuntu 16.04

SuiteCRM ir bezmaksas atvērtā koda alternatīva populārajai klientu attiecību pārvaldības (CRM) sistēmai SugarCRM. Tas kļuva populārs, kad SugarCRM nolēma

Kā instalēt Open Eshop operētājsistēmā Ubuntu 16.04

Kā instalēt Open Eshop operētājsistēmā Ubuntu 16.04

Open Eshop ir bezmaksas atvērtā koda e-komercijas programmatūra digitālo preču, piemēram, MP3, e-grāmatu, filmu, programmatūras un daudz ko citu, pārdošanai. Šajā apmācībā mēs vēlēsimies

Instalējiet NixOS vietnē Vultr

Instalējiet NixOS vietnē Vultr

NixOS ir tīri funkcionāls Linux izplatīšana. To var atrast vietnē nixos.org. Galvenais NixOS izmantošanas iemesls ir tas, ka tas ir pilnībā deklaratīvs, kas padara

Instalējiet Nginx + PHP FPM + Caching + MySQL Ubuntu 12.04

Instalējiet Nginx + PHP FPM + Caching + MySQL Ubuntu 12.04

Iespējams, daudzi cilvēki izmantos savus Vultr VPS kā tīmekļa serverus, laba izvēle būtu Nginx kā tīmekļa serveris. Šajā tēmā es aprakstīšu o

Hosts faila izmantošana vietņu pārbaudei

Hosts faila izmantošana vietņu pārbaudei

Hosts fails ir īpašs fails jūsu darbstacijas datorā, kurā tiks saglabāta IP un nosaukuma informācija. Šis fails tiek pārbaudīts pirms DNS, tādēļ, ja ievietojat a

Kā instalēt Xubuntu darbvirsmu Vultr serveros, izmantojot Ubuntu 15.10

Kā instalēt Xubuntu darbvirsmu Vultr serveros, izmantojot Ubuntu 15.10

Xubuntu ir XFCE + Ubuntu! XFCE ir viegla Ubuntu GUI/darbvirsma. Vultr serveriem ir nepieciešamas papildu atkarības, kas pēc noklusējuma nav instalētas

Iestatīšana ļauj šifrēt ar Lighttpd Ubuntu 16.04

Iestatīšana ļauj šifrēt ar Lighttpd Ubuntu 16.04

Ievads Let's Encrypt ir sertifikācijas iestāde (CA), kas izsniedz bezmaksas SSL/TLS sertifikātus. Lighttpd ir viegls tīmekļa serveris, kas darbojas uz lo

Apache optimizācija zemas klases VPS operētājsistēmā Ubuntu 14.04

Apache optimizācija zemas klases VPS operētājsistēmā Ubuntu 14.04

Apache ir ļoti viegli instalēt un inicializēt, taču tas ir aprīkots ar daudziem iepriekš instalētiem moduļiem, kā rezultātā, palaižot, var rasties veiktspējas problēmas.

Kā novērst vienlaicīgus savienojumus operētājsistēmā Linux, izmantojot IPTables

Kā novērst vienlaicīgus savienojumus operētājsistēmā Linux, izmantojot IPTables

iptables ir ugunsmūra programmatūra, ko var atrast daudzos izplatījumos, tostarp CentOS un Ubuntu. Šajā dokumentā jūs redzēsit, kā jūs varat novērst vienlaicīgumu

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk