Java操纵Redis系列化性能。

我们将用三种不一样的方式来测量

第一种jdk

Spring容器中配置RedisTemplate。key系列化器StringRedisSerializer。value系列化器为JdkSerializationRedisSerializer

public void addJDK() {

User user = new User();

long stare = System.currentTimeMillis();

for (int i =1; i <=50000; i++) {

user.setId(i);

user.setName(StringUtil.getChineseName());

user.setSex(StringUtil.getSex());

user.setPhone(StringUtil.getPhoneNo());

user.setEmail(StringUtil.getEmail(3, 20));

user.setBirthday(StringUtil.getBirthday());

rt.opsForValue().set("key"+i, user);

}

long end = System.currentTimeMillis();

System.out.println("jdk方式共消耗"+(end-stare)+"ms");

System.out.println("共有五万条数据");

}

第二种json

Spring容器中配置RedisTemplate。key系列化器StringRedisSerializer。value系列化器为Jackson2JsonRedisSerializer

public void addJson() {

User user = new User();

long stare = System.currentTimeMillis();

for (int i =1; i <=50000; i++) {

user.setId(i);

user.setName(StringUtil.getChineseName());

user.setSex(StringUtil.getSex());

user.setPhone(StringUtil.getPhoneNo());

user.setEmail(StringUtil.getEmail(3, 20));

user.setBirthday(StringUtil.getBirthday());

rt.opsForValue().set("key"+i, user);

}

long end = System.currentTimeMillis();

System.out.println("json方式共消耗"+(end-stare)+"ms");

System.out.println("共有五万条数据");

}

第三种hash

Spring容器中配置RedisTemplate。key系列化器StringRedisSerializer。hashKey系列化器StringRedisSerializer,hashValue系列化器StringRedisSerializer

public void addHash() {

User user = new User();

long stare = System.currentTimeMillis();

for (int i =1; i <=50000; i++) {

user.setId(i);

user.setName(StringUtil.getChineseName());

user.setSex(StringUtil.getSex());

user.setPhone(StringUtil.getPhoneNo());

user.setEmail(StringUtil.getEmail(3, 20));

user.setBirthday(StringUtil.getBirthday());

rt.opsForHash().putIfAbsent("Key"+i, "key"+i, user.toString());

}

long end = System.currentTimeMillis();

System.out.println("hash方式共消耗"+(end-stare)+"ms");

System.out.println("共有五万条数据");

}

相比之下

jdk方式共消耗20299ms

共有五万条数据

------------------------------------------------

json方式共消耗19932ms

共有五万条数据

------------------------------------------------------

hash方式共消耗20619ms

共有五万条数据

相比之下hash快一点

你可能感兴趣的:(Java操纵Redis系列化性能。)