jedis upgrade

This commit is contained in:
Athou
2014-09-23 15:21:34 +02:00
parent 2a36cc4327
commit 2105e9a5c9
2 changed files with 9 additions and 33 deletions

View File

@@ -238,7 +238,7 @@
<dependency> <dependency>
<groupId>redis.clients</groupId> <groupId>redis.clients</groupId>
<artifactId>jedis</artifactId> <artifactId>jedis</artifactId>
<version>2.5.2</version> <version>2.6.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.sun.mail</groupId> <groupId>com.sun.mail</groupId>

View File

@@ -31,23 +31,19 @@ public class RedisCacheService extends CacheService {
@Override @Override
public List<String> getLastEntries(Feed feed) { public List<String> getLastEntries(Feed feed) {
List<String> list = Lists.newArrayList(); List<String> list = Lists.newArrayList();
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisEntryKey(feed); String key = buildRedisEntryKey(feed);
Set<String> members = jedis.smembers(key); Set<String> members = jedis.smembers(key);
for (String member : members) { for (String member : members) {
list.add(member); list.add(member);
} }
} finally {
pool.returnResource(jedis);
} }
return list; return list;
} }
@Override @Override
public void setLastEntries(Feed feed, List<String> entries) { public void setLastEntries(Feed feed, List<String> entries) {
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisEntryKey(feed); String key = buildRedisEntryKey(feed);
Pipeline pipe = jedis.pipelined(); Pipeline pipe = jedis.pipelined();
@@ -57,16 +53,13 @@ public class RedisCacheService extends CacheService {
} }
pipe.expire(key, (int) TimeUnit.DAYS.toSeconds(7)); pipe.expire(key, (int) TimeUnit.DAYS.toSeconds(7));
pipe.sync(); pipe.sync();
} finally {
pool.returnResource(jedis);
} }
} }
@Override @Override
public Category getUserRootCategory(User user) { public Category getUserRootCategory(User user) {
Category cat = null; Category cat = null;
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisUserRootCategoryKey(user); String key = buildRedisUserRootCategoryKey(user);
String json = jedis.get(key); String json = jedis.get(key);
if (json != null) { if (json != null) {
@@ -74,16 +67,13 @@ public class RedisCacheService extends CacheService {
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} finally {
pool.returnResource(jedis);
} }
return cat; return cat;
} }
@Override @Override
public void setUserRootCategory(User user, Category category) { public void setUserRootCategory(User user, Category category) {
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisUserRootCategoryKey(user); String key = buildRedisUserRootCategoryKey(user);
Pipeline pipe = jedis.pipelined(); Pipeline pipe = jedis.pipelined();
@@ -93,16 +83,13 @@ public class RedisCacheService extends CacheService {
pipe.sync(); pipe.sync();
} catch (JsonProcessingException e) { } catch (JsonProcessingException e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} finally {
pool.returnResource(jedis);
} }
} }
@Override @Override
public UnreadCount getUnreadCount(FeedSubscription sub) { public UnreadCount getUnreadCount(FeedSubscription sub) {
UnreadCount count = null; UnreadCount count = null;
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisUnreadCountKey(sub); String key = buildRedisUnreadCountKey(sub);
String json = jedis.get(key); String json = jedis.get(key);
if (json != null) { if (json != null) {
@@ -110,16 +97,13 @@ public class RedisCacheService extends CacheService {
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} finally {
pool.returnResource(jedis);
} }
return count; return count;
} }
@Override @Override
public void setUnreadCount(FeedSubscription sub, UnreadCount count) { public void setUnreadCount(FeedSubscription sub, UnreadCount count) {
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
String key = buildRedisUnreadCountKey(sub); String key = buildRedisUnreadCountKey(sub);
Pipeline pipe = jedis.pipelined(); Pipeline pipe = jedis.pipelined();
@@ -129,15 +113,12 @@ public class RedisCacheService extends CacheService {
pipe.sync(); pipe.sync();
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} finally {
pool.returnResource(jedis);
} }
} }
@Override @Override
public void invalidateUserRootCategory(User... users) { public void invalidateUserRootCategory(User... users) {
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
Pipeline pipe = jedis.pipelined(); Pipeline pipe = jedis.pipelined();
if (users != null) { if (users != null) {
for (User user : users) { for (User user : users) {
@@ -146,15 +127,12 @@ public class RedisCacheService extends CacheService {
} }
} }
pipe.sync(); pipe.sync();
} finally {
pool.returnResource(jedis);
} }
} }
@Override @Override
public void invalidateUnreadCount(FeedSubscription... subs) { public void invalidateUnreadCount(FeedSubscription... subs) {
Jedis jedis = pool.getResource(); try (Jedis jedis = pool.getResource()) {
try {
Pipeline pipe = jedis.pipelined(); Pipeline pipe = jedis.pipelined();
if (subs != null) { if (subs != null) {
for (FeedSubscription sub : subs) { for (FeedSubscription sub : subs) {
@@ -163,8 +141,6 @@ public class RedisCacheService extends CacheService {
} }
} }
pipe.sync(); pipe.sync();
} finally {
pool.returnResource(jedis);
} }
} }