010-学习Redis
一、介绍与安装:
1、Redis是什么?
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings) , 散列(hashes) , 列表(lists) , 集合(sets) , 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了复制(replication),LUA脚本(Lua scripting),LRU驱动事件(LRU eviction),事务(transactions)和不同级别的 磁盘持久化(persistence), 并通过Redis哨兵(Sentinel) 和自动分区(Cluster)提供高可用性(highavailability)
- 内存存储:内存的速度肯定比数据库快,所以Redis速度比mysql查询速度快。
- 缓存:在内存中查询,不需要去硬盘中去查询了。
- 最常用的数据类型:Strings/hashes/lists
- 事务:能做数据库,肯定有事务的功能
- 磁盘持久化:Redis是在内存中操作数据的,虽然性能很高,很有可能丢失数据的(例如:Word写文档,没有保存关机了,就丢失了)。所以提供了:磁盘持久化,即使内存用不了,服务器宕机,但是只要持久化到磁盘,持久化到磁盘当中就不会丢失了。
可以用作:数据库、缓存、消息中间件
五种数据类型:strings/hashes/lists/set/sorted sets
集群下用到的哨兵
2、性能
下面是官方的bench-mark数据:
- 测试完成了50个并发执行100000个请求。
- 设置和获取的值是一个256字节字符串。
- 结果:读的速度是110000次/s,写的速度是81000次/s
3、Redis历史简介
2008年,意大利一家创业公司Merzia的创始人Salvatore Sanfilippo为了避免MySQL的低性能,亲自定做一个数据库,并于2009年开发完成,这个就是Redis。
从2010年3月15日起,Redis的开发工作由VMware主持。
从2013年5月开始,Redis的开发由Pivotal赞助。
说明:Pivotal公司是由EMC和VMware联合成立的一家新公司。Pivotal希望为新一代的应用提供一个原生的基础,建立在具有领导力的云和网络公司不断转型的IT特性之上。Pivotal的使命是推行这些创新,提供给企业IT架构师和独立软件提供商。
4、支持语言
5、支持的数据类型
string 、 hash 、 list、 set 、 sorted set