Redis应用

Redis介绍

      数据库主要类型有对象数据库,关系数据库,键值数据库等等,对象数据库太超前了,现阶段不提也罢;关系数据库就是平常说的MySQL,PostgreSQL这些熟的不能再熟的东西,至于键值数据库则是本文要着重说的,其代表主要有MemcacheDB,Tokyo Cabinet等等。

      Redis本质上也是一种键值数据库的,但它在保持键值数据库简单快捷特点的同时,又吸收了部分关系数据库的优点。从而使它的位置处于关系数据库和键值数据库之间。Redis不仅能保存Strings类型的数据,还能保存Lists类型(有序)和Sets类型(无序)的数据,而且还能完成排序(SORT)等高级功能,在实现INCR,SETNX等功能的时候,保证了其操作的原子性,除此以外,还支持主从复制等功能。

安装redis-server

http://github.com/antirez/redis

tar zxvf redis.tar.gz
cd redis
make

由于没有make install,所以得把源代码目录里的关键文件手动复制到适当的位置:

cp redis.conf /etc/   #具体的配置参数可以到 /etc/redis.conf 进行设置,包括IP、Port、最大连接数、Master
cp redis-benchmark redis-cli redis-server /usr/bin/

测试运行:

redis-server /etc/redis.conf

确认运行了之后,可以用redis-benchmark命令测试看看,还可以通过redis-cli命令实际操作一下,比如:

redis-cli set foo bar
OK
redis-cli get foo
bar

 

在安装目录下面有:

/client-libraries/  这里面有各种客户端的库,ruby、python等,你可自己单独安装所需client

具体的安装、测试,详见:

http://code.google.com/p/redis/wiki/QuickStart

安装redis-client:

redis-py:
http://github.com/andymccurdy/redis-py/

 

测试使用:

>>> import redis
>>> r = redis.Redis(host='localhost', port=6379, db=0)
>>> r.set('foo', 'bar')   # or r['foo'] = 'bar'
True
>>> r.get('foo')   # or r['foo']
'bar'

注意:保证你的版本基本属于最新版本,这样才能保证client正常调用server。

 

应用场景:

       1)键值存储

       2)临时队列

       内存中临时处理的数据,比如常用的队列,如果使用关系数据库,则需要将数据从db调入内存,然后再处理db,频繁的访问db,效率必然不高。但是有了redis,我们可以方便的对一些临时数据进行处理,而且其支持文件持久化,哪怕中间出现当机,restart之后,将之前的数据重新加载,可谓:方便、高效、安全。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis是一种高性能的内存数据库,它被广泛用于各种应用场景。以下是几个常见的Redis应用场景: 1. 缓存:由于Redis的高性能和低延迟,它通常被用作数据缓存层,将频繁访问的数据存储在内存中,从而加快数据访问速度。 2. 会话存储:在分布式系统中,可以使用Redis存储用户会话信息,包括用户登录状态、权限等。这样可以轻松实现会话共享和负载均衡。 3. 发布/订阅系统:Redis支持发布/订阅模式,可以用于实时消息传递、事件通知等场景。发布者将消息发布到指定频道,订阅者可以接收到相关消息并做出相应处理。 4. 计器和排行榜:Redis提供了原子操作的支持,可以用于实现计器和排行榜功能。例如,可以使用Redis的INCR操作来实现网站的访问计器,或者根据用户的积分进行排行。 5. 分布式锁:在分布式系统中,为了保证数据的一致性和并发控制,可以使用Redis的分布式锁功能。通过使用RedisSETNX操作来获取锁,并使用EXPIRE设置锁的过期时间,可以有效地实现分布式锁。 6. 消息队列:Redis的列表结构可以用作轻量级的消息队列。生产者将消息推入列表,消费者则从列表中弹出消息进行处理。这种方式简单高效,适用于需要异步处理的场景。 这只是一部分常见的Redis应用场景,实际上,由于Redis的灵活性和高性能,它在各种场景下都有不同的应用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值