`
fandayrockworld
  • 浏览: 308937 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

初识redis

 
阅读更多

现在NoSQL已经火的不能再火了,听了这么长时间,今天才试了一下。

 

java驱动用的是jedis 2.0.0,可以到这下:http://mvnrepository.com/artifact/redis.clients/jedis

 

刚开始写了个入门级程序插入redis,每秒才900条左右,不仅让我大喊坑爹,但是一想,

 

额····是单线程····

 

起了10个线程后,到每秒到9000条了。

 

现贴出代码:

 

package com.test;

import redis.clients.jedis.*;

public class RedisTest {

	private static JedisPool pool;

	static {
		JedisPoolConfig config = new JedisPoolConfig();
		config.setMaxActive(100);
		config.setMaxIdle(20);
		config.setMaxWait(1000);
		config.setTestOnBorrow(true);
		pool = new JedisPool(config, "10.10.67.9");
	}

	public static void main(String[] args) {
		RedisTest demo = new RedisTest();
		demo.test();
	}

	public void test() {
		testThread();
		// initInsert();
//		 flush();
		// getData(1000000);
	}

	private void initInsert() {
		System.out.println("RedisTest 插入数据开始");
		Jedis jedis = (Jedis) pool.getResource();
		for (long i = 0; i <= 1000000; i++) {
			jedis.set(EhcacheTest.long2Ip(i), "cmcc");
		}
		pool.returnResource(jedis);
		System.out.println("RedisTest 插入数据结束");
	}

	private void getData(long key) {
		Jedis jedis = (Jedis) pool.getResource();
		long time = System.currentTimeMillis();
		System.out.println(jedis.get(EhcacheTest.long2Ip(key)));
		System.out.println(System.currentTimeMillis() - time);

		System.out.println(jedis.dbSize());
	}

	private void flush() {
		Jedis jedis = (Jedis) pool.getResource();
		jedis.flushAll();
	}

	private void testThread() {
		Thread thread[] = new Thread[10];
		for (int i = 0; i < thread.length; i++) {
			thread[i] = new MyThread();
			thread[i].setName(String.valueOf(i));
			thread[i].start();
		}
	}

	class MyThread extends Thread {
		@Override
		public void run() {
			int num = Integer.parseInt(this.getName()) * 100000;
			
			Jedis jedis = RedisTest.pool.getResource();
			for (int i = num; i < num + 100000; i++) {
				jedis.set(EhcacheTest.long2Ip(i), "cmcc");
			}
		}
	}
}

 上面的例子借鉴了此处:http://blog.csdn.net/zuoanlove/article/details/6595229

 

 

分享到:
评论

相关推荐

    第9章 初识Redis Cluster.rar

    一站式学习Redis 从入门...包含Redis基础,使用经验介绍、Java,Python客户端示范、Redis使用规范,由浅入深讲解并伴有企业中Redis开发的相关项目以及大规模Redis的实战经验,是开发和运维人员系统学习Redis的必备内容

    Redis简介-初识Redis

    介绍Redis前世今生,众多特性,典型应用场景,安装配置,如何使用等。。

    一次初识redis

    redis新手使用

    codersm#note#Redis入门系列一初识Redis(todo)1

    1、纯内存访问,Redis将_x0008_所有数据放在内存中,内存_x0008_响应时长大约为100纳秒,这是Redis_x0008_达到每秒万级别访问的重要基

    Redis实战_201512.pdf

    第1章 初识Redis 第2章 使用Redis构建Web应用 第二部分 核心概念 第3章 Redis命令 第4章 数据安全与性能保障 第5章 使用Redis构建支持程序 第6章 使用Redis构建应用程序组件 第7章 基于搜索的应用程序 第8章 构建...

    《redis实战》电子书 中文 11章完整版PDF

    第1章 初识Redis 第2章 使用Redis构建Web应用 第二部分:核心概念 第3章 Redis命令 第 4 章 数据安全与性能保障 第 5 章 使用Redis构建支持程序 第 6 章 使用 Redis 构建应用组件 第 7 章 基于搜索的应用程序 第 8 ...

    Redis实战 ] 约西亚 L.卡尔森(Josiah,L.,Carlson) 著;黄健宏 译

    第1章 初识Redis 2 1.1 Redis简介 3 1.1.1 Redis与其他数据库和软件的对比 3 1.1.2 附加特性 4 1.1.3 使用Redis的理由 5 1.2 Redis数据结构简介 6 1.2.1 Redis中的字符串 7 1.2.2 Redis...

    Redis从入门到高可用 高清

    Redis是当前最火的非关系型数据库,此教程从最初的了解redis到深入的探索,更好的了解redis和学习redis.教程如:初识redis、redis特性、持久化、集群、整合Spring等等。

    redis服务安装包.rar

    https://blog.csdn.net/qq_21987433/article/details/89418452 初识Redis 本博客中描述用到的安装包下载,由于各种原因,博客中的下载地址不能下载,特在此提供

    《Redis实战》

    1.3 初识Redis ........................................................................................................................ 13 1.3.1 数据类型 ..................................................

    Redis从入门到高可用分布式

    第1章 Redis初识 第2章 API的理解和使用 第3章 Redis客户端的使用 第4章 Redis其他功能 ...第9章 初识Redis Cluster 第10章 深入Redis Cluster 第11章 缓存设计与优化 第12章 Redis云平台CacheCloud 第13章 课程总结

    Redis从入门到高可用视频.zip

    目录网盘文件永久链接 第1章 Redis初识 第2章 API的理解和使用 第3章 Redis客户端的使用 ...第9章 初识Redis Cluster 第10章 深入Redis Cluster 第11章 缓存设计与优化 第12章 Redis云平台CacheCloud 第13章 课程总结

    1-2.Redis初识-谁在使用redis

    redis入门视频教程,包含redis sentinel、redis cluster等等

    第1章 Redis初识.rar

    一站式学习Redis 从入门...包含Redis基础,使用经验介绍、Java,Python客户端示范、Redis使用规范,由浅入深讲解并伴有企业中Redis开发的相关项目以及大规模Redis的实战经验,是开发和运维人员系统学习Redis的必备内容

    redis初识

    NULL 博文链接:https://wsluozefeng.iteye.com/blog/2225052

    2019年 Redis从入门到高可用 分布式实战教程

    1-2 Redis初识.mp4 1-15 redis常用配置.mp4 1-14 redis三种启动方式介绍.mp4 1-13 redis典型使用场景.mp4 1-12 特性8-高可用分布式.mp4 1-11 特性7-复制.mp4 1-10 特性6-简单.mp4 1-1 导学.mp4

    初识Linux内核,进程通信能这么玩 (1).mp4

    内容包括:C/C++,Linux,Nginx,golang,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,ffmpeg,流媒体, 音视频,CDN,P2P,K8S,Docker,Golang,TCP/IP,协程,嵌入式,ARM,DPDK等等。。。

    221208-11MessageQueuing(初识消息队列)

    通过Redis分布式缓存数据库或RabbitMQ实现消息队列(MessageQueuing)

    linux基本操作.docx

    Linux、MySQL、redis的初识和基本操作

    Java思维导图xmind文件+导出图片

    初识分布式架构与意义 如何把应用从单机扩展到分布式 大型分布式架构演进过程 分布式架构设计 主流架构模型-SOA架构和微服务架构 领域驱动设计及业务驱动规划 分布式架构的基本理论CAP、BASE以及其应用 什么...

Global site tag (gtag.js) - Google Analytics