最近刚刚接触了redis技术,对此有一些了解,这是简单作一点总结。java
首先,简单了解一下NoSQL(Not only sql),不要错误的理解为:没有SQL,而是不单单是SQL。NoSQL工具也是一种简易的数据库,它主要是基于内存的数据库,并提供必定的持久化功能。如今有不少这种技术如:memcachedb,redis,MongoDB等等。
Redis 是彻底开源免费的,遵照BSD协议,是一个高性能的key-value数据库。
Redis的性能十分优越,能够支持每秒十几万的读/写操做,其性能超数据库,而且支持集群、分布式、主从同步等配置,还支持必定事务能力。
Redis 与其余 key - value 缓存产品有如下三个特色:git
redis的性能优越主要来自3个方面:github
通常,在javaweb中应用redis存在两个场景,一个是缓存经常使用的数据;另外一个是在须要高速读/写的场合使用它快速读/写,好比一些须要进行商品抢购和抢红包的场合。
在使用Redis存储的时候,须要从3个方面进行考虑:web
个人电脑是windows系统的,因此主要以此为主,其它系统的安装就没有介绍。
下载地址:redis
也能够到Redis的官网下载。
下载下来是一个压缩包,解压后的目录以下:
方便启动在目录下新建一个startup.cmd,用编辑工具打开,写入如下内容:redis-server redis.windows.conf
就是经过命令来读取redis-window.conf的内容,用来启动redis,双击启动,出现下图就说明启动成功了。
在文件夹下还有一个redis-cli.exe,它一个Redis自带的客户端工具,能够链接到redis服务器,如图:
这样就安装好了redis。redis
安装好了,咱们经过代码来测试一下redis的性能,要想使用redis,须要下载jedis.jar包。
下面是测试代码:(代码来自书上例子)sql
package com.mz.redis; import redis.clients.jedis.Jedis; /** * @Package com.mz.redis * @Description: redis测试 * @auther MZ * @create 2017/10/10 22:14 */ public class RedisTest { public static void main(String[] args) { Jedis jedis = new Jedis("localhost",6379); int i = 0; try { long start = System.currentTimeMillis(); while (true) { long end = System.currentTimeMillis(); if (end - start >= 1000) { break; } i++; jedis.set("test" + i, i + ""); } } finally { jedis.close(); } System.out.println("redis每秒操做:"+i+"次"); } }
结果如图:
书上做者的性能能够达到2万屡次,而个人只有几千次,每次运行结果都不同。能够是个人电脑太老了,没能体现redis真正的性能。数据库