初识redis
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis的特性:
一 : 速度快:(10w OPS )每秒10万读写 1,数据存储在内存中 (主要原因)。 2,redis使用C语言编写 3,redis是单线程语言
二: 持久化: 1,断电不会丢数据 (数据的更新将异步保存到硬盘上【如果服务器宕机宕机或者异常挂掉 redis提供了RDB和AOF 两种处理方式来对数据进行持久化处理】)
三:多种数据结构:字符串 哈希 集合 有序集合 无序集合 位图(BitMaps) 地理位置定位(GEO)
四: 支持多种客户端语言 Java ,PHP, Python 等
五:Redis功能丰富(发布订阅,支持lua脚本,支持简单的事务,支持pipeline提高客户端bing并发效率)
六:代码简洁(23000) 不依赖外部库 单线程模型
七:支持主从复制(为高可用和分布式提供很好的基础)
八:支持高可用分布式(2.8版本以上的Reids-sentinel支持高可用) 分布式(3.0版本Redis-cluster支持分布式)
Redis使用场景
缓存系统,技术器 ,消息队列系统(发布订阅,队列 阻塞队列),排行榜,社交网络,实时系统
缓存系统: