Sto sperimentando con GAE negli ultimi 2 mesi.Quanto è veloce Google App Engine?
Sto salvando i record sul bigtable caricando il file CSV.
La dimensione del file di prova è 300 KB.
Ecco quello che ho trovato
sistema locale
- Carica prendere meno di 1 secondo
- di processo 2500 record in 3 secondi
Su Google Sandbox
Il caricamento richiede 5-7 secondi.
Il file di elaborazione dà il timeout.
Salva solo 60-180 record.
Le mie domande sono
- perché ci vuole troppo tempo?
- C'è un modo per ridurre questo tempo?
- Google conta questa elaborazione per gli usi della CPU. Non rivelano h/w quindi quale CPU usano internamente? Voglio dire, ottengo una CPU equivalente o superiore a PIII?
cura per risposta @Drew Sears s'.
quello che sto facendo attualmente
- caricare il file da Gae
- vengono caricati byte di dati. Per flusso, contare le linee, salvarlo in bigtable.
- C'è un campo unico, id, mio record.
- Ora, creo coda
int x = linesCount/50;
for(int i<0;i=x;i++)
{
x = i * 50;
Queue queue = QueueFactory.getQueue("test-queue");
queue.add(TaskOptions.Builder.url("/TestQueue")
.param("id", id.toString())
.param("startIdx",String.valueOf(x))
.param("totRec",String.valueOf(50))
);
}
int y = linesCount % 50;
if(y > 0)
{
x = (linesCount/50) * 50;
Queue queue = QueueFactory.getQueue("test-queue");
queue.add(TaskOptions.Builder.url("/TestQueue")
.param("id", id.toString())
.param("startIdx",String.valueOf(x))
.param("totRec",String.valueOf(y))
);
}
L'elaborazione compito servlet file dalla memoria e l'utilizzo di totRec e startIdx processo il file e chiuderlo leggere ..
È la volta che si verifica su google sandbox alla prima richiesta? Che dire delle richieste conseguenti? – naikus
La latenza che si sta verificando non è causata dalla mancanza di alimentazione della CPU, ma dall'implementazione del datastore GAE (e della connessione di rete). GAE condivide le risorse con altre applicazioni sugli stessi server, ma hanno un sacco di cicli della CPU per andare in giro ... È il datastore che è in ritardo. –
In prima richiesta salva solo 60 rceords. La prossima richiesta migliora la velocità e salva 120-150 record. ora il massimo va a 184 record – Manjoor