Ho lavorato a un'applicazione Java su GAE che utilizza servizi come cloud sql, calender api, mail API e data-store. Quindi la mia domanda è che ho bisogno di misurare l'utilizzo di questi servizi per gli utenti che accedono alla mia applicazione. Questo sarà basato sul numero di I/O che eseguono su cloud SQL o sulla quantità di dati archiviati. C'è un modo per farlo?Misurazione sui servizi Google App Engine
risposta
Non esiste un modo integrato per misurare la quota per utente. Potresti essere in grado di farla franca tenendo traccia degli accessi di ciascun utente a queste risorse e memorizzandole nell'archivio dati, anche se questo aumenterebbe l'utilizzo. 2 scritture sono necessarie per ogni uso, o 4 se è indicizzato.
Se non si richiede una misurazione precisa e se i dati di misurazione vanno persi se le risorse di Google si esauriscono, è possibile memorizzarle in memcache come dati di nome utente/id-> misura. Viene fornito su una base di best-effort che dovrebbe essere sufficiente se vincolato ai limiti di sanity per ogni app e non è necessario fatturare agli utenti.
I due possono essere utilizzati in modo ottimale insieme. Ogni pochi minuti a un'ora, scrivere i dati di utilizzo memcached nell'archivio dati e, se i dati vengono persi dalla memcache (a meno che non si acquisti memcache dedicati), ripristinare dal datastore (possibilmente stimando l'utilizzo nel periodo perduto passato).
Attualmente non è possibile calcolare l'utilizzo di ciascun servizio. ma questo può aiutarti a ottenere l'utilizzo della CPU da & CPU per ogni richiesta.
App Engine include un paio di intestazioni extra in tutte le risposte HTTP inviate. Ecco intestazioni HTTP che contribuiranno a metro l'utilizzo delle risorse & stimata-CPM-US-Dollari:
X-AppEngine-Resource-Usage: ms=293 cpu_ms=500 api_cpu_ms=236
X-AppEngine-Estimated-CPM-US-Dollars: $0.
Ecco alcuni di riferimento: http://googleappengine.blogspot.in/2009/08/new-features-in-124.html https://developers.google.com/appengine/docs/java/#Java_Responses
"App Engine includerà un paio di intestazioni supplementari tutte le risposte HTTP che ti invia. " Solo se autenticato su Google e la tua app con un account amministratore app, – hexafraction
Sì, corretto. Ma qui non riesco ad autenticare l'utente tramite il suo account Google o il giuramento di Google. –