内存缓存中的实体键是否与数据存储中的相同
Is entity key in memcache the same as in datastore
当我像这样设置内存缓存实体的键时
syncCache.put(entityKey, entity);
其中
entityKey = entity.getKey();
entityKeyIdFromDataStore = entityKey.getId();
然后我检索存储在内存缓存中的实体并检索密钥 id
entity = (Entity) syncCache.get(entityKey);
entityKeyIdFromCache = entity.getKey().getId();
那么 entityKeyIdFromDataStore 和 entityKeyIdFromCache 会相同吗?
是的,它会是一样的。请注意,您可以使用 ID 而不是密钥:
syncCache.put(entityKey.getId(), entity);
entity = (Entity) syncCache.get(entityKey.getId());
ID 比密钥短得多。当然,这只适用于没有父实体的实体,或者如果您在 Memcache 中只存储一种实体。
当我像这样设置内存缓存实体的键时
syncCache.put(entityKey, entity);
其中
entityKey = entity.getKey();
entityKeyIdFromDataStore = entityKey.getId();
然后我检索存储在内存缓存中的实体并检索密钥 id
entity = (Entity) syncCache.get(entityKey);
entityKeyIdFromCache = entity.getKey().getId();
那么 entityKeyIdFromDataStore 和 entityKeyIdFromCache 会相同吗?
是的,它会是一样的。请注意,您可以使用 ID 而不是密钥:
syncCache.put(entityKey.getId(), entity);
entity = (Entity) syncCache.get(entityKey.getId());
ID 比密钥短得多。当然,这只适用于没有父实体的实体,或者如果您在 Memcache 中只存储一种实体。