2012-03-22 12 views
5

Ho installato Play framework sul mio Macbook pro. Gioca 1.2.4 sull'ultimo 10.7.3. Ho 8 GB di memoria e i7 Quad core cpu (mostra 8 core).Play framework su Mac, problema di prestazioni

Questo è tutto estremamente interessante e mi sto divertendo a scrivere in codice. Ma poi ho voluto vedere cosa uno spettacolo che dovrei ottenere in produzione, così ho cambiato il config domanda come questa:

prod.application.mode=prod 

La mia classe di applicazione ha solo 1 metodo

public static void index() { 
    String theman = "You are the man"; 
    render(theman); 
} 

e la mia domanda modello per indice è questo:

#{extends 'main.html' /} 
#{set title:'Home' /} 

The man is ${theman} 

Questo è tutto.

Quando eseguo riferimento apache su questo tipo:

ab -n 1 -c 1 http://localhost:9000/

ottengo buoni numeri, ma se ho avuto modo di -n 10 tutto solo si blocca e il computer va a 100% di carico su 1 nucleo e rimane lì per sempre.

ho usato per ottenere gli errori HEAP ma ho impostato questo come una variabile di ambiente:

export _JAVA_OPTIONS="-Xms800m -Xmx1500m" 

Ed ora ho più alcun errore, da nessuna parte.

Il mio collega ha provato la mia app che ho tartrato e gzip prima di inviarlo, può facilmente fare -n 10000 -c 1000 un dit appena eseguito e finito in men che non si dica, quasi istantaneamente.

Quindi la mia domanda è: devo impostare altre variabili di sistema o cosa devo fare per far funzionare la mia app Play sul mio Mac?

Solo per chiarire le cose, il mio mac è completamente aggiornato fino ad oggi, tutto è al 99% come proveniente dalla fabbrica, probabilmente più vicino al 100%, tranne che ho xcode e tale installato.

mio Java è:

java version "1.6.0_29" 
Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-11D50b) 
Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode) 

uname -sa 

Darwin xxx.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64 x86_64 
+0

Hai intenzione di distribuire l'app sul tuo MacBook? In caso contrario, perché le prestazioni del sistema operativo sono rilevanti? Inoltre, hai provato a profilare l'app per trovare il collo di bottiglia? – millimoose

+0

Non ho provato a profilare l'app. Non ho trovato nessuna azienda di hosting per Mac e non ne sto cercando neanche io, quindi no non lo distribuirò su Mac, ma voglio che tutto funzioni e voglio mostrare statistiche sulle persone e quanto bene funzioni sotto carico.Quindi, a mio parere, questo è abbastanza banale per avere ragione. Non ho idea di quali parametri impostare così e variabili d'ambiente da utilizzare –

+0

Penso che tu intenda il tuo quad (4) core i7 mostra 8 cpus. –

risposta

4

Ho anche avuto questo problema.

L'Apache utilità di punto di riferimento che viene fornito con Mac OS X Lion ha uno strano bug che si manifesta con Play 2.0, ma non giocare 1.2.x. Sulla mia macchina, duplica ogni richiesta, a volte fino a una dozzina di volte.

È possibile verificare questo eseguendo un singolo test e quindi vedere quanti accessi sono presenti nei file di registro.

Le versioni più recenti di ab non presentano questo problema. Puoi build it yourself o scaricare un binary that someone made.

+0

Questo è verificato. Semplicemente facendo un semplice test –