使用ReJSON从redis获取元素范围
因此,在json内部有一个名为items的键,它实际上包含一个元素数组,现在我们可以使用使用ReJSON从redis获取元素范围,redis,redisjson,Redis,Redisjson,因此,在json内部有一个名为items的键,它实际上包含一个元素数组,现在我们可以使用json.get employees list.items[1]从该数组中获取选择性索引 但在我们的例子中,我们需要从这个数组中获取一个范围,比如索引为0-10、10-20等的元素,以便分页,这样我们就不必在代码中获取整个数据,然后过滤结果 我之所以寻找它,是因为如果我们阅读整个列表,那么数据大小将是巨大的,数据传输延迟将增加,因为使用它的API和redis服务器不在同一个实例上,而且如果可能的话,不必在代码
json.get employees list.items[1]
从该数组中获取选择性索引
但在我们的例子中,我们需要从这个数组中获取一个范围,比如索引为0-10、10-20等的元素,以便分页,这样我们就不必在代码中获取整个数据,然后过滤结果
我之所以寻找它,是因为如果我们阅读整个列表,那么数据大小将是巨大的,数据传输延迟将增加,因为使用它的API和redis服务器不在同一个实例上,而且如果可能的话,不必在代码中这样做更有意义
所以第一件事是它甚至是可能的,如果是,我们如何实现它?不支持完整的JSONPath语法,只支持简单的单路径。
但是,您可以利用Redis管道支持实现足够好的结果,以非阻塞方式发送以下内容:
JSON.GET employees-list .items[1]
JSON.GET employees-list .items[2]
JSON.GET employees-list .items[3]
另一方面,它有完整的JSONPath支持,并且确实支持这样的查询,但目前为了向后兼容,它只返回第一个元素(如)。这类支持可能将在下周增加