redis

redis.io 进去看就行了

支持网络交互的、可基于内存也可持久化的Key-Value数据库

Redis与其他key-value存储有什么不同

Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

在 Web 开发中, Redis 是一个相当重要的工具,它已经不仅仅用于缓存,还被直接用做数据库,充当消息中介等。想要构建高性能、高吞吐的 Node.js 应用,利用好 Redis 是非常重要的途经。

1.优化数据库本身

优化sql语句

2.引入缓存机制,把一部分数据缓存起来 获取速度快

将数据保存在内存上

使用redis(缓存系统 数据库)

一.

服务启动工具 和 命令行启动方式

mac下使用brew来安装~~ redis

启动:redis-server  control+C 断开

vim /etc/redis.conf

?daemonize(搜索 进程以什么方式来启动  no  yes守护进程的模式)

ps aux | grep redis 看redis运行方式

redis 运行 6379端口

redis-cli  就默认连接到redis的服务端口

redis  键值的存储方式

二.基本使用

1.存储和获取值



2.redis pub/sub

Pub/Sub功能(means Publish, Subscribe)即发布及订阅功能

基于事件的系统中,Pub/Sub是目前广泛使用的通信模型,它采用事件作为基本的通信机制,提供大规模系统所要求的松散耦合的交互模式:订阅者(如客户端)以事件订阅的方式表达出它有兴趣接收的一个事件或一类事件;发布者(如服务器)可将订阅者感兴趣的事件随时通知相关订阅者。

消息发布者,即publish客户端,无需独占链接,你可以在publish消息的同时,使用同一个redis-client链接进行其他操作(例如:INCR等)

消息订阅者,即subscribe客户端,需要独占链接,即进行subscribe期间,redis-client无法穿插其他操作,此时client以阻塞的方式等待“publish端”的消息;这一点很好理解,因此subscribe端需要使用单独的链接,甚至需要在额外的线程中使用。


3.redis pub sub(publish subscribe)之基本使用

订阅

redis 127.0.0.1:6379> SUBSCRIBE redisChat

发布

redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique"


我们就会看到接受到消息了

你可能感兴趣的:(redis)