我刚开始在我的Play应用程序中使用Redis
,它的效果非常好。看看我在互联网上找到的一些例子,我想知道以下两个代码片段之间有什么区别:
import redis.clients.jedis._
import com.typesafe.plugin.RedisPlugin
import play.cache.Cache
val pool = app.plugin(RedisPlugin.class).jedisPool
val jedis = pool.getResource
jedis.set("myKey", "myValue")
pool.returnResource(jedis)
...
val myValue = jedis.get("myKey")
......而且这一个:
import com.typesafe.plugin.RedisPlugin
import play.cache.Cache
Cache.set("myKey", "myValue")
...
val myValue = Cache.get("myKey")
好的,最终结果是一样的,即我正在从缓存中检索一个值...但是什么时候应该使用JedisPool
而不是简单的Cache.get
?
的Tx。
答案 0 :(得分:1)
您必须查看插件代码,以便在第二个选项中检查Redis缓存的实现,以区别对待。
使用Play Cache只是从实现中稍微抽象出来。如果您将来可以更改缓存,我会推荐它。相反,如果您想在Play!之外的其他环境中使用此代码,您应该更喜欢第一个选项。