如何异步调用Lettuce和Redis的Geo命令

时间:2015-09-09 09:59:26

标签: java redis lettuce

我正在尝试使用生菜来为Redis添加地理位置。 我设法使用同步方法。

是否可以使用异步api为lettue转换此逻辑?

同步代码:

StatefulRedisConnection<String, String> connection= client.connect();
RedisCommands syncCommands=syncCommands = connection.sync()
long result = syncCommands.geoadd(key, longitude, latitude, userId);

如何将其转换为异步调用?

谢谢, 射线。

1 个答案:

答案 0 :(得分:1)

尝试:

StatefulRedisConnection<String, String> connection= client.connect();
RedisAsyncCommands<String, String> asyncCommands = connection.async()
RedisFuture<Long> result = asyncCommands.geoadd(key, longitude, latitude, userId);

lettuce 4.0允许在一个连接上使用不同的API(同步,异步和被动)。这与生活3.x的不同之处在于API风格与连接相结合。

只需调用连接对象上的async()方法即可获取异步API。您可以找到有关异步API in the Wiki的更多信息。