Ich weiß, dass die App-Engine den Memcache und den Datenspeicher für Sitzungen verwendet. Ich kann in Appstats sehen, dass wenn ich getSession (), Erstellen einer neuen Sitzung, diese 1 Memcache und 1 Datenspeicher put auftreten.
Aber bei jeder einzelnen Anfrage meiner App bekomme ich das aktuelle Benutzerobjekt aus der Sitzung. Und kein Memcache oder Datenspeicher wird in Appstats angezeigt.
Wie funktioniert das?
Der Google-Blog " Einfache Leistungsprofilerstellung mit Appstats " hat eine nette Sache Artikel, der Profiling Memcache in Appstats sieht. Es wird in Python diskutiert, verweist jedoch auf die Verwendung von Appstats für Java.
Von: "Google App Engine & gt; Appstats für Java "
Wie es funktioniert
Der Appstats-Servlet-Filter fügt sich selbst zum Remoteprozeduraufruf-Framework hinzu, das den App Engine-Dienst-APIs zugrunde liegt. Es zeichnet Statistiken für alle API-Aufrufe auf, die während des Anforderungshandlers ausgeführt werden, und speichert die Daten dann in Memcache unter Verwendung eines Namespaces von
__appstats__
. Appstats speichert Statistiken für die letzten 1.000 Anfragen (ungefähr). Die Daten umfassen Zusammenfassungsdatensätze mit jeweils etwa 200 Byte und Detaildatensätze, die jeweils bis zu 100 KB groß sein können.Die Java-Version von Appstats verwendet feste Werte und Verhaltensweisen für die Speicherung von Daten im Memcache und im Datenspeicher. (Diese können nicht mit der Python-Version von Appstats konfiguriert werden.)
Wenn Sie Probleme mit Memcache-Daten haben, die nicht in Appstats angezeigt werden, können Sie sich JCache als Schnittstelle zum Memcache-Service von App Engine. Oder es gibt ein paar Tools, die auf die Berichterstellung von Memcached-Statistiken zugeschnitten sind hier .
Prost.
Tags und Links java google-app-engine