Quale ottimizzazioni per un LAMP stack di sviluppo?

19 contenuti / 0 new
Ultimo contenuto
Quale ottimizzazioni per un LAMP stack di sviluppo?

Ciao team,

Dato che ho sborsato soldi serie per un nuovo computer, dual core 2.8 GHz, 4 GB, raid1 320GB, e tanti piccoli luci blu, speravo di trovare un miglioramento notevole nella visuallizzazione delle pagine - soprattutto admin, specialmente modules. Ma non è stato cosi, ci vuole ancora qualche secondo...

Quindi ho buttato il computer fuori dalla finestra fatto qualche piccolo ricerca, trovando questi articoli:
Profiling Apache+Mysql+Php server - which is the bottleneck?
Best practices for optimizing LAMP sites for speed?
Drupal Performance Tuning and Optimization for large web sites

Di questi mi sembra interessante PHP APC, ma crea problemi se stai sviluppando un modulo?

Comunque, sono molto interessante di sapere se avete qualche dritte a proposito di rendere LAMP un lampo...

TIA

John

Mi spiace jhon ma sinceramente ho sempre un po' combattuto con LAMP soprartutto in termini di velocità. Mi sembra però assurdo che un simil computer non renda abbastanza...

Tieni conto che io ho avuto per mesi un P4 1.7Gh collegaco n Wireless con la rete domestica ed io con il mio poratitle a mia volta collegato in wireless mi collegavo al P4 converito in server Domestico... e certo non era lamp(O)..., ma funzionava piuttosto bene ma aveva anche 256 MB di ram ... cosa volevo pretendere?!

Appunto per questo mi sembra piuttosto strano che un siml computer possa andare così lento....

forse su due piedi mi verrebbe da pensare che potrebbe essere snellito notevlmente APACHE da moduli inutili, o altra importante soluzione potrebbe essere far compilare direttamente sulla tua nuova macchina sia Kernerl che moduli legati ad APACHE, probabilmente potrebbero miglirare sensibilmente le prestazioni generali.

Slice2Theme Servizio per la conversione di Design in markup HTML e/o temi.

WeBrain Solution | Pillsofbits Of Bits

Cosa intendete per "lampo"?
io lavoro su una modesta macchina virtuale (ubuntu desktop 9.10 su Vbox) con 768MB ram, PHP memory = 128M; ho lo stack AMP di default (tranne php-gd che ho ricompilato perchè la versione di ubuntu non funzionava bene con Drupal).
nella mia sandbox ci sono circa 120 moduli/sottomoduli, di cui la metà abilitati e 27 temi al momento ed ho più o meno questi load time:
admin/build/modules -> 500/2000 ms;
i tempi più lunghi si verificano quando faccio operazioni con drush e "rinfresco" la pagina (F5).
considerando che sul mio hosting attuale siamo intorno ai 10-20 secondi...mi pare che sia veloce!
(o almeno io sono sodisfatto...)

Dimenticavo: la macchina host è win XP su Asus P5K pro (2008), 4MB RAM, Core 2 Quad Q6600 Kentsfield @ 2.4 Ghz

Ciao John,

jhl.verona wrote:
Comunque, sono molto interessante di sapere se avete qualche dritte a proposito di rendere LAMP un lampo...

Prova a disabilitare il modulo "Update status", rilanci un cron e poi fai un check delle prestazioni.

E' stato riscontrato che questo modulo può creare problemi di prestazioni nella parte di amministrazione, l'ho riscontrato anche personalmente.

Try and let we know

<a href="mailto:bohz@drupal.org" rel="nofollow">bohz@drupal.org</a> wrote:
Dimenticavo: la macchina host è win XP su Asus P5K pro (2008), 4MB RAM, Core 2 Quad Q6600 Kentsfield @ 2.4 Ghz

4MB di RAM? Bohz ma come hai fatto a farci girare WinXP sopra che non legge nemmeno per intero i 4GB? Hai ricompilato il Kernel di Windows togliendoli le librerie grafiche se sono al suo interno? :D

Naturalmente scherzo, so che è un errore di battitura :))

no, è che io ce li ho messi i banchi perchè prima o poi devo switchare a Linux.
..dopo averli installati ho scoperto che xp ne vede solo 3....
ma li ho lasciati li
[EDIT]: mi sbagliavo, ho controllato e ce ne sono 3 (?). Il bello è che le mani nel case ce le metto solo io...

Quote:
[EDIT]: mi sbagliavo, ho controllato e ce ne sono 3 (?). Il bello è che le mani nel case ce le metto solo io...

Ce ne sono 3 perché di sicuro quando l'hai assemblato eri a conoscenza del fatto che WinXP di 4GB ne legge solo 3GB.

L'unica pecca è WinXP, diciamo che ti sei fatto una Ferrari ma ancora la guidi come una 500 ;))

..mi preoccupa che non ricordo un fatto del genere! è passato solo 1 anno e mezzo. (ho pure trovato il GB ramingo in un cassetto)

Quote:
L'unica pecca è WinXP, diciamo che ti sei fatto una Ferrari ma ancora la guidi come una 500 ;))

eh.. lo so bene :(
se non fosse per Adobe e per la mia gentile, lo avrei abbandonato da tempo.

<a href="mailto:bohz@drupal.org" rel="nofollow">bohz@drupal.org</a> wrote:
Cosa intendete per "lampo"?
io lavoro su una modesta macchina virtuale (ubuntu desktop 9.10 su Vbox) con 768MB ram, PHP memory = 128M; ho lo stack AMP di default (tranne php-gd che ho ricompilato perchè la versione di ubuntu non funzionava bene con Drupal).
nella mia sandbox ci sono circa 120 moduli/sottomoduli, di cui la metà abilitati e 27 temi al momento ed ho più o meno questi load time:
admin/build/modules -> 500/2000 ms;
i tempi più lunghi si verificano quando faccio operazioni con drush e "rinfresco" la pagina (F5).
considerando che sul mio hosting attuale siamo intorno ai 10-20 secondi...mi pare che sia veloce!
(o almeno io sono sodisfatto...)

Dimenticavo: la macchina host è win XP su Asus P5K pro (2008), 4MB RAM, Core 2 Quad Q6600 Kentsfield @ 2.4 Ghz

Come ti trovi con la macchina virtuale?
Che vantaggi hai rispetto al fatto di averlo direttamente in Locale?
Ttieni conto che io utilizzo costantemente Ubuntu con vBox attivo con praticamente l'80% del tempo d'uso del PC costantemenre Windows XP in virtuale.

Oltre al fatto di portarmi dietro l'immagine del server viortuale e non dover ogni volta riconfigurare l'intero apache... non vedo altri vantaggi.... illuminami...

Slice2Theme Servizio per la conversione di Design in markup HTML e/o temi.

WeBrain Solution | Pillsofbits Of Bits

Mi trovo abbastanza bene, ma non c'è nessun vantaggio rispetto ad averlo in locale. Sono sicuro che sarebbe molto più performante.
In realtà vorrei adottare una situazione simile alla tua: Ubuntu in locale e xp in virtuale. Ma conosco ancora troppo poco linux + altri problemi.

Al momento non sono molto organizzato e procedo in questo modo: lavoro in genere sulla macchina virtuale e tengo in sync (non completamente in automatico) i siti in locale con quelli in sviluppo sul server, quindi posso lavorare anche da remoto, dreamhost permettendo.
Non ho quindi la necessità di avere un ambiente portatile (anche se cerco di tenere una copia aggiornata dei siti sull'HD esterno).
Ma sono fondamentalmente un disordinato, quindi il tutto non è certo super affidabile!

Quote:
illuminami...

Guarda, mi sa che è meglio che mi illumini tu ;)

Quote:
Come ti trovi con la macchina virtuale?
Che vantaggi hai rispetto al fatto di averlo direttamente in Locale?
Ttieni conto che io utilizzo costantemente Ubuntu con vBox attivo con praticamente l'80% del tempo d'uso del PC costantemenre Windows XP in virtuale.

Io utilizzo VMWARE e mi trovo molto bene, l'unica pecca è che VMWARE è una elefante, ma svolge molto bene il suo lavoro, fino ad oggi è il migliore che ho testato.

Virtual Box l'ho provato agli albori, ma era indecente, da quando l'hanno riportato in auge va bene, è molto più snello e fa bene il suo lavoro.

Quote:
Oltre al fatto di portarmi dietro l'immagine del server viortuale e non dover ogni volta riconfigurare l'intero apache... non vedo altri vantaggi.... illuminami...

I vantaggi sono impliciti in quello che hai appena scritto, portarsi dietro un intero sistema (o più) semplicemente in un unico file è qualcosa di semplicemente fantastico, sia dal punto di vista del back-up ma anche dal punto di vista istruttivo, se sbagli azzeri e ricominci e il tutto avendo un sistema funzionante sotto (il tuo sistema base) che non viene incasinato.

L'unico svantaggio è nelle prestazioni, che naturalmente essendo su una risorsa condivisa (Processore, RAM, Disco) subisci dei rallentamenti, ma su un server di produzione non metterai mai ad esempio X-Server ... :)

Grazie delle risposte - anche se un pò larghati...

kiuz wrote:
Mi sembra però assurdo che un simil computer non renda abbastanza...

Allora siamo in due...

<a href="mailto:bohz@drupal.org" rel="nofollow">bohz@drupal.org</a> wrote:
Cosa intendete per "lampo"?

Che non ho il tempo a domandare se ho cliccato o no (cioè 1-2 secondi massimo, non il 5-10 secondi di adesso - sempre admin/build/modules)
<a href="mailto:bohz@drupal.org" rel="nofollow">bohz@drupal.org</a> wrote:

...snip..
admin/build/modules -> 500/2000 ms;

Grrr. Proprio quello che voglio io...

sylpheed wrote:
Ciao John,
...snip...
Prova a disabilitare il modulo "Update status", rilanci un cron e poi fai un check delle prestazioni.
E' stato riscontrato che questo modulo può creare problemi di prestazioni nella parte di amministrazione, l'ho riscontrato anche personalmente.
Try and let we know

Tried it - yup, quello cambia qualcosina. Ma non direi che era significativo. Forse 5% forse 10%. L'ho riabilitato - mi piace sapere se ci sono updates. Buona l'idea comunque...

<a href="mailto:bohz@drupal.org" rel="nofollow">bohz@drupal.org</a> wrote:
no, è che io ce li ho messi i banchi perchè prima o poi devo switchare a Linux.
..dopo averli installati ho scoperto che xp ne vede solo 3....
ma li ho lasciati li
[EDIT]: mi sbagliavo, ho controllato e ce ne sono 3 (?). Il bello è che le mani nel case ce le metto solo io...

Se daverro hai solo 3GB allora va bene così. Se invece hai di più, ricordati che ci vuole un OS a 64 bit per andare oltre 3GB...
Io sto usando Vista 64 bit e Ubuntu 64 bit, e vedo i miei 4GB (contati uno per uno, sono diffidente) sia su Vista che su Ubuntu...

Provato cambiare (in /etc/apache2/apache2.conf)

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients           150
    MaxRequestsPerChild   0
</IfModule>

in
<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
#    MaxClients          150
    MaxClients           20
    MaxRequestsPerChild   0
</IfModule>

ma non cambiava molto.

Ma ho cambiato browser - da Firefox tempi: 3 a 5-6-7 secondi ad Opera tempi: 1-2 secondi. So che Opera è 64 bit, devo controllare FF. Ho versione 3.0.14, hmmm. Provo a vedere (anche se ho installato Ubuntu 9.04 64 bit)... O forse è Firebug e/o tutti le altri plugins...

John

Più imparo, più dubito.

sylpheed wrote:
Quote:
Come ti trovi con la macchina virtuale?
Che vantaggi hai rispetto al fatto di averlo direttamente in Locale?
Ttieni conto che io utilizzo costantemente Ubuntu con vBox attivo con praticamente l'80% del tempo d'uso del PC costantemenre Windows XP in virtuale.

Io utilizzo VMWARE e mi trovo molto bene, l'unica pecca è che VMWARE è una elefante, ma svolge molto bene il suo lavoro, fino ad oggi è il migliore che ho testato.

Virtual Box l'ho provato agli albori, ma era indecente, da quando l'hanno riportato in auge va bene, è molto più snello e fa bene il suo lavoro.

Quote:
Oltre al fatto di portarmi dietro l'immagine del server viortuale e non dover ogni volta riconfigurare l'intero apache... non vedo altri vantaggi.... illuminami...

I vantaggi sono impliciti in quello che hai appena scritto, portarsi dietro un intero sistema (o più) semplicemente in un unico file è qualcosa di semplicemente fantastico, sia dal punto di vista del back-up ma anche dal punto di vista istruttivo, se sbagli azzeri e ricominci e il tutto avendo un sistema funzionante sotto (il tuo sistema base) che non viene incasinato.

L'unico svantaggio è nelle prestazioni, che naturalmente essendo su una risorsa condivisa (Processore, RAM, Disco) subisci dei rallentamenti, ma su un server di produzione non metterai mai ad esempio X-Server ... :)

bha io sinceramenrte uso come ho appena detto costantemente vbox che alla versione 2.x è migliorata molto, so che prima era una menata!
ora ho
Inter Core DUO 1,73Ghz
2GB RAM
160GB HD
SCHEDA VIDEO 256 MB Radeon Mobility x1600

e ci faccio girare Ubuntu 9.04
con vBox > Windows xp
e Xp gli ho assegnato 1200MB di RAM per farci girare tutta la suite di Adobe CS3 .....

Xp non è un campione in velocità soprtattutto nell'uso della RAM ma fino ad ora non sè mai Piantato nessuno, pensa tu che normalmente avevo difficoltà cion CS3 e Windows installati normalmente su questo Notebook....

Un vantaggio che vorrei testare nell'uso di macchine virtuali per server locale è il fatto che speso la cionfigurazione di Apche è articolata (secondo le tue esigenze), e poi anche se hai un UBUNTU vecchiotto.. poco ti importa tutto sommato basti che giri in versione APACHE :D ... ditemi se ho torto...

Slice2Theme Servizio per la conversione di Design in markup HTML e/o temi.

WeBrain Solution | Pillsofbits Of Bits

Piccolo update:
Lanciando firefox -safe-mode (cioè senza add-ins) non ha cambiato granchè.
Mi sembra (ma c'era nebbia su Internet oggi) che FF non è disponibile a 64 bit. Sigh.
Installato Chromium 64 bit. Va bene 1-2 secondi come Opera.
Aggiornato FF a 3.5.3 (Shiretoko) e va meglio 2-4 secondi. Non ho capito se è 64 bit...

Quindi un classico problema "fra sedia e tastiera". Identificatore ID dieci T. Userò Opera/Chromium per smanettare...

Rimango comunque aperto ad altri suggerimenti, se ho tempo questo fine settimana proverò APC...

John

Più imparo, più dubito.

Bene Jhon, personalmente ho appena ricevuto la nuova scheda madre da montare sul server Domestico, appena faccio qualche update vi aggiorno....

Slice2Theme Servizio per la conversione di Design in markup HTML e/o temi.

WeBrain Solution | Pillsofbits Of Bits

Ultimo update (per ora):
Aggiunto APC, ma non ha cambiato molto - forse dovrò martellare il server un pò per vedere i risultati 'veri'.
Aggiornato a Ubuntu 9.10 'Karmic' nessun cambiamento (non che mi l'aspettavo)

Continuo con Opera/Chromium per il normale tran tran, PHP Eclipse/Firefox per debugging.

Va bene cosi...

John

Più imparo, più dubito.

Ciao,

Se usi sVista, io ti consiglio un bel XAMPP lite, lo usi (zero VM che sono pesanti e goffe) come te lo danno quando ti stufi lo butti e ne metti una copia pulita (non si installa!!!)

Se usi ubuntu credo che Apache +mod_php sia ottimo anche per sviluppare (APC in sviluppo non ha troppo senso anche se migliora le performace)

Be!! se poi vuoi una voce autorevole ti consiglio: http://buytaert.net/drupal-webserver-configurations-compared

Ciao

Personalmente anche io seguo la filosofia delle macchine virtuali, molto comode, te le puoi portare in giro senza troppi casini, una volta settata la macchina master per ogni progetto ne fai una copia e ci lavori, fatto il setup iniziale è veramente comodo come modo di lavorare (JM2C).

Ciao
Marco
--
My blog
Working at @agavee

Un migliormanto c'è stato. In php.ini c'è un parametro chiamato realpath_cache_size, di solito commentato. L'ho settato a:
realpath_cache_size=2M
è mi ha dato un percepibile miglioramento. La pagina modules (admin/build/modules/list) si carica in circa 3 secondi dal precedente 4-5 secondi.

Più imparo, più dubito.