【问题标题】:is memcache used read quota of google app engine?memcache 是否使用了谷歌应用引擎的读取配额?
【发布时间】:2013-05-21 23:59:24
【问题描述】:

我使用 GWT 2.4 和 GAE 1.7.4。在我的数据存储中我使用 blob 存储图像。**我已经将所有数据放入 **memcache 并且在每次刷新我的主页后读取配额增加 1%

我的代码如下

 public List<CastDTO> getAll() {
    List<CastDTO> dtoList = new ArrayList<CastDTO>();

    //Use Memcache more efficiently, Increase caching of frequently accessed shared data
    final MemcacheService syncCache = MemcacheServiceFactory.getMemcacheService();
    syncCache.setErrorHandler(ErrorHandlers.getConsistentLogAndContinue(Level.INFO));
    List<Cast> cacheCastsList = (List<Cast>) syncCache.get(StaticData.CAST_LIST);

    if(cacheCastsList == null){
        cacheCastsList = castDAO.findAll();
        for (Cast cast : cacheCastsList) {
            dtoList.add(CastConverter.convert(cast));
            syncCache.put(cast.getCastName(), cast.getCastImage());
        }
        syncCache.put(StaticData.CAST_LIST, cacheCastsList);
    }else{
        for (Cast cast : cacheCastsList) {
            dtoList.add(CastConverter.convert(cast));
        }
    }

    return dtoList;
}

【问题讨论】:

  • (两年后 :) 首先您单独存储您的 castImages,然后再次存储整个列表。换句话说,您在 Memcache 中使用了两倍的空间。你知道事实吗? “这就是你备份数据的方式吗?”

标签: google-app-engine gwt memcached google-cloud-datastore blob


【解决方案1】:

默认情况下,memcache 不使用读取 cota。 但是,如果您使用 memcache 中的数据来识别数据存储中的其他数据,则使用 cota。

如果在执行“刷新缓存”并第二次重新加载您的主页后未命中计数增加,您能否在 memcache 查看器中看到?

如果在第二次主页加载后您的 Miss 计数增加,则您的代码中可能有错误的实现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-24
    • 1970-01-01
    • 1970-01-01
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多