关于redis的一些问题,事物方面,线程,在项目中的应用等几个点

本文介绍了Redis的基础知识,包括其作为NoSQL数据库的角色,支持的持久化方式,以及单线程特性。重点讨论了Redis的事务处理,通过multi和exec命令实现,并在遇到错误时使用discard回滚。同时,概述了Redis在电商项目中的应用,如缓存、单点登录、计数器、排行榜和秒杀场景。
摘要由CSDN通过智能技术生成

一、首先redis是什么? 

REmote DIctionary Server(远程字典服务器). 它是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,

基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器。

Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用.

二、关于事物方面的话

它是支持事物的,像mysql差不多,它使用multi开启事务 ,多个命令操作。。。 使用exec提交事务(错误命令导致异常,使用discard回滚)

Multi                                 ---------开启事物

Set k1 1                            ---------- 传入数据

Set k2 2

。。。

Exec/discard                -------提交或者失败就回滚

这个简单图的话就可以解释

三、关于线程方面

redis是单线程,内部采用了队列技术实现串型访问

四、简述对redis的理解

Key-value的数据存储形式,纯内存数据库,非常快,当然redis也支持持久化(rdb和aof)redis.conf。有五种类型:string hash list set zset。

可以做分布式存储,主从复制,集群(集群采用了轮询、随机等算法)。

五、电商项目中redis的应用

主要是用来做缓存,如首页的商品分类,模块内容,还有一些业务查询数据(查单个商品)

也有其他的用途如:

1、 系统之间的单点登录 ( session共享)

2、计数器,如商品的 id自增 incr incrby

3 、排行榜,使用了zset(有一个分数的概念)

4 、秒杀抢购(redis的watch乐观锁)

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

如有更好想法,请下方留言,谢谢观看!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 缓存 Redis最常见的使用场景是缓存。在Web应用程序,缓存可以减少数据库的负载,提高应用程序的性能。例如,当用户请求一个页面时,可以首先检查Redis缓存是否有请求的数据。如果有,那么可以直接从缓存提取数据,而不必访问数据库。这可以减少数据库的负载,提高Web应用程序的性能。 2. 分布式锁 Redis还可以用作分布式锁。在分布式系统,需要确保多个进程或线程不会同时访问关键资源。Redis可以使用SETNX命令来实现简单的分布式锁。SETNX命令可以将一个键设置为仅在键不存在时才能设置成功。这意味着只有一个进程或线程可以获得锁。当不再需要锁时,可以使用DEL命令删除键。 3. 计数器 Redis还可以用作计数器。在Web应用程序,计数器可以用来跟踪页面的访问次数、用户的击次数等信息。Redis提供了INCR和DECR命令来增加和减少计数器的值。这些命令是原子的,因此可以安全地在多个进程或线程之间使用。 4. 发布/订阅 Redis还提供了发布/订阅功能。发布/订阅是一种消息传递模式,其发布者将消息发送到一个特定的频道,订阅者则接收该频道上的所有消息。Redis提供了PUBLISH命令来发布消息,以及SUBSCRIBE和UNSUBSCRIBE命令来订阅和取消订阅频道。 5. 地理位置 Redis还可以用于处理地理位置信息。Redis提供了GEOADD、GEORADIUS、GEORADIUSBYMEMBER等命令来处理地理位置数据。这些命令可以用来存储和查询地理位置信息,并找到附近的位置。这在各种应用程序都很有用,例如餐厅查找、旅游应用程序等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值