当前位置: 首页 > wzjs >正文

高新网站建设网络营销推广方案怎么做

高新网站建设,网络营销推广方案怎么做,淘宝如何建网站,昆明网站建设方案优化Redis 事务(Transaction) 事务概念 事务:是一组操作的集合,是不可分割的工作单元。Redis 事务特点: 一个事务可以一次执行多个命令。所有命令都被顺序化,形成一个队列。所有命令在执行 EXEC 时一次性、顺…

Redis 事务(Transaction)

事务概念

  • 事务:是一组操作的集合,是不可分割的工作单元。
  • Redis 事务特点:
    • 一个事务可以一次执行多个命令。
    • 所有命令都被顺序化,形成一个队列。
    • 所有命令在执行 EXEC 时一次性、顺序执行。

与 MySQL 事务的区别

特点RedisMySQL
提交前执行情况命令只入队,执行 EXEC 前不实际执行执行前可能已部分生效
原子性保障不保证所有指令成功或失败(无回滚)支持回滚
执行过程命令顺序执行,期间不被其它命令插入依赖事务隔离级别

Redis 保证事务内命令顺序执行:
1 -> 2 -> 3,不会变成 1 -> 2 -> 被插队 -> 3


事务使用示例

1. 正常事务执行

127.0.0.1:6379> MULTI
OK
127.0.0.1:6379(TX)> set k1 1
QUEUED
127.0.0.1:6379(TX)> set k2 2
QUEUED
127.0.0.1:6379(TX)> set k3 3
QUEUED
127.0.0.1:6379(TX)> EXEC
1) OK
2) OK
3) OK

2. 放弃事务

127.0.0.1:6379> MULTI
127.0.0.1:6379(TX)> set k1 11
127.0.0.1:6379(TX)> set k2 22
127.0.0.1:6379(TX)> DISCARD
OK

事务出错

1. 语法错误

在命令入队阶段就报错,事务无法执行:

127.0.0.1:6379> MULTI
127.0.0.1:6379(TX)> set k2
(error) ERR wrong number of arguments for 'set' command
127.0.0.1:6379(TX)> EXEC
(error) EXECABORT Transaction discarded because of previous errors.

2. 逻辑错误

命令入队成功,但某条命令在执行时失败,不影响其他命令:

127.0.0.1:6379> set name luobozi
127.0.0.1:6379> MULTI
127.0.0.1:6379(TX)> INCR name   # name 是字符串,不能自增
127.0.0.1:6379(TX)> set k1 12
127.0.0.1:6379(TX)> EXEC
1) (error) ERR value is not an integer
2) OK

Redis 锁机制:乐观锁

Watch 命令

  • 使用 WATCH 对某个 key 进行监控。
  • 如果事务执行前该 key 被修改,EXEC 执行失败,事务不会生效。

下面演示了Watch 对num施加了乐观锁,最后EXEC提交前修改了num导致事务失败
在这里插入图片描述

乐观锁 vs 悲观锁

类型描述
乐观锁假设不会发生冲突,提交前检查(如 Redis WATCH
悲观锁假设总会冲突,使用互斥锁机制控制访问

Redis 管道(Pipeline)

原因

  • TCP 通信频繁读写会造成性能瓶颈。
  • 多次发送命令、等待响应效率低。

管道原理

  • 一次性发送多条命令 到 Redis。
  • Redis 执行完后 一次性返回结果
  • 不具有事务的隔离和原子性。

使用示例

# test.txt 文件内容:
get k1
set k2 v2
set k3 v3# 使用管道批量执行
cat test.txt | redis-cli -a 123456 --pipe

注意:

  • 管道命令执行失败,不会影响后续命令执行。
  • 命令过多会导致客户端阻塞过久。

事务 VS 管道

特性事务(Transaction)管道(Pipeline)
原子性有部分原子性,顺序执行,不可插队无原子性
并发控制会阻塞其它命令插入(顺序执行)不阻塞其他命令
发送方式多条命令逐条发送,最后 EXEC 执行多条命令一次性发送
执行方式统一入队后执行服务端逐条执行后统一返回
错误处理语法错误直接终止事务失败命令不影响后续命令

文章转载自:

http://OYCiZKcB.Lywcd.cn
http://LmIF83AM.Lywcd.cn
http://xcUD7byd.Lywcd.cn
http://qRtYS0DU.Lywcd.cn
http://rCeLQo0t.Lywcd.cn
http://dwY0nwu7.Lywcd.cn
http://8nv0fazC.Lywcd.cn
http://gg0f7Cw4.Lywcd.cn
http://eyHLxcAD.Lywcd.cn
http://eyk1ppe6.Lywcd.cn
http://pSIuzTDE.Lywcd.cn
http://IUvLIdnz.Lywcd.cn
http://Ur838nnL.Lywcd.cn
http://IZ0Ty0jM.Lywcd.cn
http://WMQ5LzLf.Lywcd.cn
http://1oydLGid.Lywcd.cn
http://T1f2nYfT.Lywcd.cn
http://kAwTSsSQ.Lywcd.cn
http://VvTQQ0xc.Lywcd.cn
http://rVEMM5Wk.Lywcd.cn
http://B53pmxnt.Lywcd.cn
http://tlrOcHea.Lywcd.cn
http://vk0iaXi3.Lywcd.cn
http://b3H9YeN3.Lywcd.cn
http://cHB2kP4V.Lywcd.cn
http://lkjsy1oR.Lywcd.cn
http://NrangPgM.Lywcd.cn
http://xYSeBZdk.Lywcd.cn
http://9Y4aKCUV.Lywcd.cn
http://KRJtWTFx.Lywcd.cn
http://www.dtcms.com/wzjs/645776.html

相关文章:

  • 做网站对企业有什么好处ps网站子页怎么做
  • php网站的开发背景家居企业网站建设渠道
  • 专业的集团网站开发开发电子商务网站建设与管理期末
  • 科技建筑公司网站模仿别人的网站
  • 在智联招聘网站做销售企业网站 实名认证
  • 二级网站建设情况说明二级建造师注册查询官网入口
  • 做博客网站赚钱优质高等职业院校建设网站
  • 湘西网站建设花垣奋进新征程
  • 昆明网站建设wang.cd网上推广怎么收费
  • 网站标题字体网站建设伍际网络
  • 电子商务网站策划书网页设计模板图片
  • discuz网站名称做个网站多少钱 百度能查到的
  • 网站icp备案wordpress 插件启用钩子
  • 汕头模板做网站最值得购买 wordpress
  • 怎么测网站流量吗亚马逊跨境电商官方网站
  • 建设网站费用评估wordpress 评论双击
  • 宁津 做网站wordpress hsts
  • 自媒体短视频制作教程seo引擎
  • 免费网站建设软件大全网站开发过程分为哪几个阶段
  • 新网站建设信息印刷网站模板下载
  • 佛山网站优化包年html的网页代码
  • 做网站需要几个服务器做淘宝客网站用什么程序最好
  • 莱芜网站建设怎么样电子商务网站帮助中心该怎么更好地设计
  • 网站域名怎么做网站关键词排名快速提升
  • 网站动态小图标南开区网站建设
  • 刘涛做的网站网站设计与网页制作在线
  • 企业网站建设大概的费用河源建网站
  • 海外广告投放是干嘛的在线排名优化
  • 网站做成app客户端网站图片设置链接
  • 一家公司做两个网站wordpress全自动淘宝客