博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一 java 中使用redis 测试Redis的写入性能
阅读量:6596 次
发布时间:2019-06-24

本文共 4324 字,大约阅读时间需要 14 分钟。

配置文件:

实体类:
Role
package com.ssm.chapter17.pojo; import java.io.Serializable; public class Role implements Serializable {
private static final long serialVersionUID = 6977402643848374753L; private long id; private String roleName; private String note; public long getId() {
return id; } public void setId(long id) {
this.id = id; } public String getRoleName() {
return roleName; } public void setRoleName(String roleName) {
this.roleName = roleName; } public String getNote() {
return note; } public void setNote(String note) {
this.note = note; } } 工具类:
testJedis
package com.ssm.chapter17.jedis; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class JedisTest {
public void testJedis() {
Jedis jedis = testPool().getResource(); // Jedis jedis = new Jedis("localhost", 6379); //连接Redis // jedis.auth("password");//如果需密码 int i = 0;// 记录操作次数 try {
long start = System.currentTimeMillis();// 开始毫秒数 while (true) {
long end = System.currentTimeMillis(); if (end - start >= 1000) {// 当大于等于1000毫秒(相当于1秒)时,结束操作 break; } i++; jedis.set("test" + i, i + ""); } } finally {// 关闭连接 jedis.close(); } System.out.println("redis每秒操作:" + i + "次");// 打印1秒内对Redis的操作次数 } private JedisPool testPool() {
JedisPoolConfig poolCfg = new JedisPoolConfig(); // 最大空闲数 poolCfg.setMaxIdle(50); // 最大连接数 poolCfg.setMaxTotal(100); // 最大等待毫秒数 poolCfg.setMaxWaitMillis(20000); // 使用配置创建连接池 JedisPool pool = new JedisPool(poolCfg, "localhost"); // 从连接池中获取单个连接 Jedis jedis = pool.getResource(); // 如果需密码 // jedis.auth("password"); return pool; } } 测试类,有原生的方法,也有Spring 提供的方法:
package com.ssm.chapter17.main; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.dao.DataAccessException; import org.springframework.data.redis.core.RedisOperations; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.SessionCallback; import com.ssm.chapter17.jedis.JedisTest; import com.ssm.chapter17.pojo.Role; public class Chapter17Main {
public static void main(String[] args) {
// testSessionCallback(); testSpring(); } private static void testJedis() {
JedisTest jedisTest = new JedisTest(); jedisTest.testJedis(); } private static void testSpring() {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); RedisTemplate redisTemplate = applicationContext.getBean(RedisTemplate.class); Role role = new Role(); role.setId(1L); role.setRoleName("role_name_1"); role.setNote("note_1"); redisTemplate.opsForValue().set("role_1", role); Role role1 = (Role) redisTemplate.opsForValue().get("role_1"); System.out.println(role1.getRoleName()); } private static void testSessionCallback() {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); RedisTemplate redisTemplate = applicationContext.getBean(RedisTemplate.class); Role role = new Role(); role.setId(1); role.setRoleName("role_name_1"); role.setNote("role_note_1"); SessionCallback callBack = new SessionCallback
() {
@Override public Role execute(RedisOperations ops) throws DataAccessException {
ops.boundValueOps("role_1").set(role); return (Role) ops.boundValueOps("role_1").get(); } }; Role savedRole = (Role) redisTemplate.execute(callBack); System.out.println(savedRole.getId()); } }
 

转载于:https://www.cnblogs.com/chensm/p/10242132.html

你可能感兴趣的文章
我的友情链接
查看>>
saltstack学习笔记
查看>>
Oracle database 和instance 区别
查看>>
数据结构与算法——搜索二叉树
查看>>
记一次抓包发现的tcp监听端口被重用的奇怪现象及一些其他
查看>>
spark-submit java.lang.OutOfMemoryError: Java heap space
查看>>
linux centos7清除系统日志、历史记录、登录信息
查看>>
MySQL的 DRBD与MMM以及Mysql Proxy
查看>>
Content-Type有哪些
查看>>
linux的ulimit各种限制之深入分析
查看>>
快速排序
查看>>
在Linux系统中安装LAMP出现的错误总结
查看>>
DHCP服务及基本配置
查看>>
从小白进阶,三分钟教你如何编写伪静态实现网站页面响应
查看>>
我的友情链接
查看>>
计算机的组成及其功能
查看>>
js Math 中数学函数用法 取整出 向上取整 向下取整
查看>>
Android清单文件详解(一) ---- 一切从<manifest>开始
查看>>
应用程序委托和新的单例(译)
查看>>
VRRP的配置
查看>>