中间件 | Redis - [基本信息]

INDEX

      • §1 常规用法
      • §2 QPS
      • §3 pipeline

§1 常规用法

分布式锁
最常见用法,需要注意分布式锁的redis需要单点

分布式事务
分布式事务中,核心的技术难点其实是分布式事务这个事本身作为数据的持久化

  • 2PC,比如 seata 的 AT 模式下,将 undo 数据作为分布式事务数据进行了持久化
  • TCC 模式中,将事务锁作为分布式事务数据进行了持久化
  • 可靠性消息中,事务消息(transztionalMessage)即分布式事务消息的持久化
  • 独立消息服务中,要发一个什么样的消息这个信息作为分布式事务数据进行持久化

而 redis,本身也可以作为分布式事务数据的持久化容器,这是因为大部分分布式事务的处理过程中,最终分布式事务数据是要被物理删除的

分布式 ID
比如雪花算法的实现

简易消息队列
并发量较低、业务模型比较简单的分布式系统中可用

其他
计数器、排行榜、统计、开关标记集

§2 QPS

10W+

§3 pipeline

pipeline 简单的说就是指令打包
一个 redis 的指令(其实不限于 redis)可以分为 4 个阶段

  • 发出
  • 排队
  • 执行
  • 返回
    其中,1/4阶段都设计网络传输(即 RTT ,往返时间)。有可能,往返时间远高于指令的排队+执行时间,于是造成了相对显著的性能浪费

pipeline 可以批量发送指令给 redis-server
在这里插入图片描述
应用 & 最佳实践
通常使用 redis api 中提供的 pipeline

Jedis jedis;Pipeline p = jedis.pipelined();
p.set(key1,value1);
p.set(key2,value2);
p.set(key3,value3);
pipelined.sync();

通常,使用 pipeline 时,建议每次 pipeline 中报文总大小不超过 1460 字节,否则可能导致 http 拆包,也会造成性能损耗

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/518806.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

101 向一个不存在的路径发送请求, get 得到 404, post 得到 405

前言 这是 最近碰到的一个问题, 大概是在 2022.05.30 前端这边 发送了一个业务请求过来, 这个请求路径是服务端这边不存在的 但是 奇怪的一点就是, 如果是以 get 请求发送过来, 服务端响应的是正确的 404 "Not Found", 但是 如果是以 post 请求发送过来, 服务端这边…

【漏洞复现】-用友CRM系统存在逻辑漏洞直接登录后台

免责声明: 本文内容为学习笔记分享,仅供技术学习参考,请勿用作违法用途,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。任何个人和组织利用此文所提供的信息而造成的直接或间接后果和损失,…

Git 掌握

一、前言 大二上学期,学校开了数据库的课程,让做课程设计,数据库代码,文档等都搞好了,让老师看的时候文档写的不好,让修改,改了之后继续让老师看,来来回回弄了三四次,最…

LeetCode每日一题之 快乐数

目录 题目介绍: 算法原理: 鸽巢原理: 如何找到环里元素: 代码实现: 题目介绍: 题目链接:. - 力扣(LeetCode) 算法原理: 我先简单举两个例子&#xff…

wsl 安装 ubuntu

文章目录 打开Windows PowerShell查看可安装的ubuntu安装相对应的ubuntu将用户添加到sudoers文件中,并赋予了该用户sudo权限。 打开Windows PowerShell 以管理员的身份运行 查看可安装的ubuntu wsl.exe --list --online安装相对应的ubuntu wsl --install 版本…

redis-集群 原生部署和工具自动部署

什么redis集群? redis集群是一个提供在多个redis节点之间共享数据的程序集。它并不像redis主从复制模式那样仅提供一个master节点来提供写服务,而是会提供多个master节点来提供写服务,每个master节点中存储的数据都不一样,这些数据…

★【二叉搜索树插入新的节点】【二叉搜索树】Leetcode 701. 二叉搜索树中的插入操作

【二叉搜索树插入新的节点】【二叉搜索树】Leetcode 701. 二叉搜索树中的插入操作 关键点:解法 递归法解法 迭代法 ---------------🎈🎈题目链接🎈🎈------------------- 关键点: 关键点: 二叉…

Java项目:41 springboot大学生入学审核系统的设计与实现010

作者主页:舒克日记 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 本大学生入学审核系统管理员和学生。 管理员功能有个人中心,学生管理,学籍信息管理,入学办理管理等。 学生功能有…

线上问题:新需求放量后频繁发生old gc

线上问题:新需求放量后频繁发生old gc 一、线上问题描述二、处理问题过程1、考虑机器扩容1.1 预发环境复现该问题1.2 预发环境机器扩容1.3 预发环境验证 2、堆内存分析2.1 内存分析2.2 问题修复 三、复盘 一、线上问题描述 周四上线了一个新需求,该需求…

教程篇:Groq API+沉浸式翻译插件 体验最快AI翻译

1、进入https://console.groq.com/keys 申请一个API(目前免费!抓紧白嫖) 2、安装Chrome插件:沉浸式翻译。 https://immersivetranslate.com/ 3、照着抄(注意将apikey,换成自己申请的groq的api-key&…

【linuxC语言】系统调用IO文件操作

文章目录 前言一、文件描述符介绍二、系统调用IO API介绍2.1 open函数2.2 close函数2.3 read函数2.4 write函数2.5 lseek函数 三、示例代码总结 前言 在Linux系统中,C语言通过系统调用实现对文件的输入输出(I/O)操作。系统调用提供了访问操作…

Docker连接Mysql

Docker连接mysql Docker通过云服务器,与本地连接 引言:这个东西我看狂神秒解决,我就试试了,结果G了,花了我两个小时, 希望内容能帮你解决问题 话不多说,直接上内容: navicat连接…