Pracuję nad aplikacją java na GAE, która korzysta z takich usług jak sql w chmurze, api aplet kalendarza, interfejs API poczty i magazyn danych. Mam więc pytanie, czy muszę mierzyć wykorzystanie tych usług dla użytkowników uzyskujących dostęp do mojej aplikacji. Będzie to zależało od liczby operacji we/wy, które wykonują w usłudze sql w chmurze lub ilości przechowywanych danych. Czy istnieje jakiś sposób, aby to zrobić ?Pomiar w usłudze Google App Engine
Odpowiedz
Nie ma wbudowanego sposobu liczenia limitu na użytkownika. Możesz być w stanie uciec z zachowaniem dostępu każdego użytkownika do tych zasobów i przechowywania ich w magazynie danych, ale spowoduje to wzrost zużycia. Dla każdego użycia potrzebne są 2 zapisy lub 4, jeśli są indeksowane.
Jeśli nie potrzebujesz dokładnego pomiaru i masz pewność, że dane pomiarowe zostaną utracone, jeśli zasoby Google będą się wyczerpywać, możesz zapisać je w pamięci memcache jako nazwa użytkownika/id-> dane pomiarowe. Jest on dostarczany z najlepszą możliwą starannością, która powinna wystarczyć, jeśli wiąże się z ograniczeniami zdrowotnymi na aplikację i nie ma potrzeby obciążania użytkowników.
Obie można optymalnie wykorzystać razem. Co kilka minut do godziny, zapisz szczegóły memcached do magazynu danych, a jeśli dane zostaną utracone z memcache (chyba że kupisz dedykowany memcache), przywróć dane z magazynu danych (prawdopodobnie szacując wykorzystanie w poprzednim straconym okresie).
Obecnie nie ma sposobu na pomiar zużycia każdej usługi. ale może to pomóc w uzyskaniu kosztu użycia każdego żądania.
Aparat App Engine będzie zawierać kilka dodatkowych nagłówków we wszystkich odpowiedziach HTTP, które wysyła. Oto nagłówki HTTP, które pomogą metr na wykorzystanie zasobów & Szacunkowa-CPM-US-Dolary:
X-AppEngine-Resource-Usage: ms=293 cpu_ms=500 api_cpu_ms=236
X-AppEngine-Estimated-CPM-US-Dollars: $0.
Oto niektóre odniesienia: http://googleappengine.blogspot.in/2009/08/new-features-in-124.html https://developers.google.com/appengine/docs/java/#Java_Responses
„App Engine będzie zawierać kilka dodatkowych nagłówków w wszystkie odpowiedzi HTTP, które ci wysyła. " Tylko jeśli jest uwierzytelniony w Google i Twojej aplikacji na koncie administratora aplikacji, – hexafraction
Tak, zgadza się. Ale tutaj nie uwierzytelniam użytkownika przez jego konto Google ani przysięgę Google. –