2010-08-28 26 views
8

Tôi biết rằng công cụ ứng dụng sử dụng memcache và kho dữ liệu cho các phiên. Tôi có thể thấy trong appstats rằng khi tôi gọi getSession(), tạo một phiên mới, 1 memcache và 1 kho dữ liệu được đặt xảy ra.Phiên làm việc Java của Máy ứng dụng của Google hoạt động chính xác như thế nào?

Tuy nhiên, trong mọi yêu cầu đơn lẻ của ứng dụng tôi đều nhận đối tượng người dùng hiện tại từ phiên. Và không có memcache hoặc kho dữ liệu nào được hiển thị trong appstats.

Cách thức hoạt động?

+0

Bạn có đang thay đổi bất kỳ điều gì trong ngữ cảnh phiên không? –

+1

Về mặt lý thuyết, một lớp bộ nhớ cache bổ sung trong bộ nhớ có thể giảm số lần truy cập memcache. Miễn là một ứng dụng chỉ chạy trên một máy chủ duy nhất, điều này sẽ có ý nghĩa hoàn hảo vì nó sẽ làm giảm đáng kể lưu lượng mạng. – sfussenegger

Trả lời

1

Blog của Google "Easy Performance Profiling with Appstats" có một bài viết đẹp nhìn vào memcache lược tả trong Appstats. Nó được thảo luận bằng Python, nhưng tham chiếu đến việc sử dụng Appstats cho Java.

From: "Google App Engine>Appstats for Java"

Chương trình hoạt động

Bộ lọc servlet Appstats thêm nó vào các thủ tục từ xa khuôn khổ cuộc gọi làm nền tảng cho các API dịch vụ App Engine. Nó ghi lại số liệu thống kê cho tất cả các cuộc gọi API được thực hiện trong trình xử lý yêu cầu, sau đó lưu trữ dữ liệu trong memcache, sử dụng một không gian tên là __appstats__. Appstats giữ lại số liệu thống kê cho 1.000 yêu cầu gần đây nhất (xấp xỉ). Dữ liệu bao gồm các bản ghi tóm tắt, khoảng 200 byte mỗi bản ghi và các bản ghi chi tiết, có thể lên đến 100 KB mỗi bản ghi.

Phiên bản Java của Appstats sử dụng giá trị cố định và hành vi cho cách dữ liệu được lưu trữ trong memcache và kho dữ liệu. (Những không thể được cấu hình như họ có thể với phiên bản Python của Appstats.)

Nếu bạn đang gặp vấn đề với dữ liệu memcache không hiển thị trong Appstats, bạn có thể muốn xem xét JCache như một giao diện cho ứng dụng Dịch vụ memcache động cơ. Hoặc, có một vài công cụ được điều chỉnh để báo cáo số liệu thống kê được ghi nhớ được đề xuất here.

Chúc mừng.

+0

Tôi không nghĩ rằng nó không hiển thị, tôi nghĩ rằng phiên thực sự không sử dụng memcache tại những điểm đó, bởi vì cpu_usage của tôi cũng không đi lên. – Kyle

Các vấn đề liên quan