Java におけるコードの最適化
Pavlos Kosmetatos
Lead Engineer @Wealthyhood
キャッシュとは、よく使う調理器具を戸棚ではなくキッチンカウンターに置いておくようなものです。取り出しやすい反面、置けるスペースには限りがあります。
よくキャッシュされるものには、次のようなものがあります。
// In-memory cache using HashMap
public class SimpleCache<K, V> {
private final Map<K, V> cache = new HashMap<>();
public V get(K key) {
return cache.get(key);
}
public void put(K key, V value) {
cache.put(key, value);
}
}
Redis とは:

import redis.clients.jedis.Jedis;
// Using Jedis client
Jedis jedis = new Jedis("localhost");
jedis.set("key", "value");
String value = jedis.get("key");
追加機能:
public class RedisTimedCache {
private final Jedis jedis;
public RedisTimedCache(String host, int port) {
this.jedis = new Jedis(host, port);
}
public String get(String key) {
return jedis.get(key);
}
public void put(String key, String value, int timeToLiveSeconds) {
// Sets both the value and expiration time in seconds
jedis.setex(key, timeToLiveSeconds, value);
}
}
Java におけるコードの最適化