我刚开始学习Redis。我将其安装在我的笔记本电脑上,并编写了一个简单的java客户端。我有一个Elasticsearch实例,用于处理来自基于web的应用程序的查询。这是相当快的,但我想知道是否有一个实际的案例,我可以‘前面’的elasticsearch实例与Redis,以加快客户端的响应时间。根据我有限的redis知识,我想知道在Redis中存储来自ES查询的响应是否实用,或者是否会提供任何价值?一般来说,有人能给我举个ES和Redis如何一起使用的例子吗?谢谢
发布于 2017-01-15 12:48:43
在图片中有Redis的一个用例是在通过Logstash将文档加载到Elasticsearch中时将其用作temporary buffer。
因为Redis基本上是一个缓存,它的主要目的是使数据快速可用,否则这些数据将不会立即可用,因为您正在查询的后端服务不够快。既然你说你的Elasticsearch实例“相当快”(不管这意味着什么),你为什么要缓存响应呢?
此外,当您将缓存放入图中时,还会出现其他新的问题,最重要的是,如何使缓存过期,何时以何种频率过期?因此,如果Elasticsearch中的数据非常稳定,您可能会从缓存中受益。但是,如果Elasticsearch中的数据频繁更改,您将经常面临Redis缓存中的许多过时数据的问题,这是您不希望出现的问题。
在我看来,花时间改进ES查询和映射以提供极快的数据要比花时间调优可能有1%的时间有用的缓存要好得多。
https://stackoverflow.com/questions/41653445
复制相似问题