代码之家  ›  专栏  ›  技术社区  ›  Kyle

Java应用程序的Java应用程序究竟如何工作?

  •  8
  • Kyle  · 技术社区  · 14 年前

    我知道应用引擎使用memcache和数据存储进行会话。我可以在appstats中看到,当我调用getsession()创建新会话时,会出现1个memcache和1个datastore put。

    但是,在应用程序的每个请求中,我都会从会话中获取当前用户对象。并且没有memcache或数据存储出现在appstats中。

    这是怎么回事?

    1 回复  |  直到 14 年前
        1
  •  1
  •   S.Jones    14 年前

    谷歌博客” Easy Performance Profiling with Appstats “有一篇很好的文章介绍了AppStats中的分析memcache。它在Python中进行了讨论,但引用了AppStasefor Java的用法。

    发件人:“Google应用程序引擎> Appstats for Java

    它是如何工作的

    appstats servlet过滤器将自己添加到应用引擎服务API基础的远程过程调用框架中。它记录在请求处理程序期间所做的所有API调用的统计信息,然后使用的命名空间将数据存储在memcache中。 __appstats__ . AppStats保留最近1000个请求的统计信息(大约)。这些数据包括摘要记录(每个约200字节)和细节记录(每个可达100 KB)。

    AppStas的Java版本使用固定的值和行为来存储数据在MyCask和数据存储中。(这些不能像对AppStats的python版本那样进行配置。)

    如果您的memcache数据没有显示在appstats中,那么您可能需要查看 JCache 作为应用引擎memcache服务的接口。或者,建议使用一些专门用于报告memcached统计信息的工具 here .

    干杯。