Di quanto RAM VPS avrei bisogno per eseguire Wordpress, Apache, SVN e MySQL?


20

Qualcuno ha una figura a sfera di quanto RAM VPS (senza burstable) avrei bisogno di avere apache con wordpress e sovversione così come l'istanza MySQL?

Apache ospiterebbe un paio di siti e SSL. MySQL avrebbe solo il database Wordpress. Questi siti hanno poco traffico, meno di 1k visite al giorno.

Risposte:


19

Tieni presente che ogni lavoratore Apache consumerà circa 20-25 MB, quindi se i tuoi colpi da 1k sarebbero equamente distanziati nel tempo in 8 ore al giorno, puoi pensare di dover servire solo 0,03 richieste al secondo.

Supponendo che tutto il tuo traffico sia concentrato in solo 1 ora al giorno (non è ovviamente), dovresti soddisfare circa 0,28 richieste al secondo.

Un altro problema è la quantità di memoria che hai ottenuto DB, ma è semplice da sapere ed è piuttosto un costo fisso.

Nel peggiore dei casi dovrai trasferire l'intero DB (oddio! In questo caso refactoring SQL! :)) .. quindi raddoppia il numero precedente

La risposta breve è (IMHO) 128 MB saranno sufficienti, abbondantemente. Il tuo server sarà inattivo e la memoria sarà libera per molto tempo, dato il traffico che immagini.

Ho 20 domini in un VPS con 256 MB da 3 anni, sono ok ... e i risultati totali sono circa 1500-2000 ...

OK, la memoria costa poco oggi, ma ragazzi ... siete a conoscenza di quanto costa un gigabyte?

PS: sto parlando ovviamente di un sistema Linux, non di un sistema operativo che consuma 4 GB solo per la GUI :)


13

Per l'uso a basso traffico che stai descrivendo, dovresti andare bene con un piccolo piano (256 MB - 384 MB). Quando Apache e MySQL sono installati, le loro configurazioni predefinite presumono che stiano lavorando con più RAM disponibile che può causare problemi. Utilizzare quanto segue come un buon punto di partenza e regolare se necessario:

Nel file di configurazione di Apache 2 (generalmente disponibile in /etc/apache2/apache2.conf o /etc/apache2/httpd.conf):

StartServers 1
MinSpareServers 3
MaxSpareServers 6
ServerLimit 24
MaxClients 24
MaxRequestsPerChild 3000

Nel file di configurazione di MySQL (in genere si trova in /etc/mysql/my.cnf):

key_buffer = 16K
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

Inoltre, se non si utilizzano le tabelle InnoDB, è necessario disabilitare il supporto InnoDB aggiungendo la seguente riga:

skip-innodb

Ho molte di queste righe menzionate in apache2.conf. cambiarli tutti? sono etichettati: prefork MPM, worker MPM,event MPM
vsync

2

Avevo problemi con i miei a 512 MB di RAM fino a quando non sono passato a FastCGI. Ciò ha migliorato molto le prestazioni. Avevo 30 MB gratuiti (senza contare la cache, ovviamente) fino ad allora, e ho finito con oltre 100 MB gratuiti.

Il tuo chilometraggio può variare, ovviamente, a seconda del traffico del tuo sito. E una volta che il traffico inizia a salire, puoi passare a nginx.

Per offrirmi un po 'di conforto, ho aumentato a 1 GB.

A proposito, sono ospitato su prgmr.com e non ho ancora visto nessuno toccare i loro prezzi.


1
Grazie per il prgmr.com, adoro lo slogan "Non crediamo che tu sia stupido". :-)
Kyle Brandt l'

Sì, questo, insieme al fatto che Luke offre sconti sulle cose di fascia bassa ai membri della LOPSA, è il motivo per cui sono andato con loro
Matt Simmons,

So che è troppo vecchio, ma ora credo che il digitalocean sia il luogo in cui la gente può dire che nessuno può batterli :)
Ali,

1

Sto eseguendo una configurazione simile su un VPS con 256 MB di RAM, ma eseguo lighttpd invece di Apache. Ho provato prima Apache, ma era troppo per il VPS da 256 MB. Se vuoi usare Apache, ti dico che puoi cavartela con 512 MB di RAM.

A seconda di chi usi per il tuo hosting VPS, puoi iniziare con un VPS più piccolo, quindi aumentare le dimensioni se necessario senza dover riconfigurare il server.


0

Dovresti andare bene con 1 GB, ma vai per 2 GB se puoi, è un passo importante per le prestazioni della maggior parte dei sistemi operativi moderni.


1
1 GB sarebbe enorme per uccidere per 1k colpi al giorno.
Ceejayoz,

Stai supponendo che stia eseguendo Linux, e se volesse eseguire Windows 2008 a 64 bit ???
Chopper3

Si noti che questo è per un server che esegue Apache, MySQL e PHP. Per Apache in particolare non vorrei usare un server Windows.
thomasrutter,

0

Uso nginx + php-fastcgi invece di Apache, ma con un carico applicativo molto simile. Uso svn + ssh per l'accesso alla mia sovversione, quindi non esiste un processo svnserve in esecuzione tranne quando accedo al repository. Tutto questo è in esecuzione su Ubuntu 8 LTS.

In questo momento, sto correndo a 174 MB utilizzati di 256 MB e il sito Web è abbastanza reattivo (tempo di risposta medio di 500 ms per le visualizzazioni di Wordpress)

             total       used       free     shared    buffers     cached
Mem:           256        252          3          0         22         56
-/+ buffers/cache:        174         81
Swap:          511         12        499

Consiglio di guardare un server web frontend leggero come nginx o lighttpd invece di Apache + mod_php. Anche Apache + mod_fastcgi che esegue il proxy su php-fastcgi richiederebbe meno memoria.

Se percorri la strada di Apache, il mio istinto dice che probabilmente 512 mb farebbero il trucco. 1 o 2 GB di memoria sembrano un notevole sovraccarico, soprattutto se si considera come la maggior parte dei provider VPS aumenta i propri costi quando si arriva a configurazioni più grandi.


0

Ho lottato con questo per un po '.

L'ambientazione di AlbertT ha funzionato alla grande. Le impostazioni di mysql hanno fatto la differenza CLEAR e ora la navigazione del sito è ottima. http://laterboltz.com

Nel file di configurazione di MySQL (in genere si trova in /etc/mysql/my.cnf):

key_buffer = 16K max_allowed_packet = 1M thread_stack = 64K table_cache = 4 sort_buffer = 64K net_buffer_length = 2K

Inoltre, se non si utilizzano le tabelle InnoDB, è necessario disabilitare il supporto InnoDB aggiungendo la seguente riga:

salta-innodb

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.