分布式redis lua

中间件 ZK分布式专题与Dubbo微服务入门 4-2 session的基本原理与create命令的使用

0 课程地址 https://coding.imooc.com/lesson/201.html#mid=12697 1 重点关注 1.1 watcher常用使用场景 集群中统一资源配置 2 课程内容 3 Coding ......
分布式 中间件 命令 原理 session

Redis集群详解

Redis集群详解 1. 如何保证 Redis 服务高可用? Redis Sentinel 集群 2. Sentinel(哨兵)有什么用? 监控 Redis 节点的运行状态并自动实现故障转移 3. Redis 缓存的数据量太大怎么办? Redis Cluster 4. Redis Cluster 虚 ......
集群 Redis

docker安装配置redis

​ 安装redis docker pull redis 配置数据路径 mkdir -p /home/redis/data docker启动 docker run -d -v /home/redis/data:/data --name redis -p 6379:6379 redis redis-se ......
docker redis

openEuler欧拉部署Redis

一、系统优化 关闭防火墙 systemctl stop firewalld systemctl disable firewalld 关闭selinux sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config setenf ......
openEuler Redis

Redis过期Key处理和内存淘汰策略

惰性删除 概述:当访问Key时,才去判断它是否过期,如果过期,直接干掉。这种方式对CPU很友好,但是一个key如果长期不用,一直存在内存里,会造成内存浪费。 set name xxxx 10 get name // 发现name过期了,直接删除 优点:对CPU友好,只会在使用该key时才会进行过期检 ......
内存 策略 Redis Key

pluto lua 的超集

pluto 是lua 的超集(5.4 版本的),同时还提供了一些新的特性,以及语法,当然也支持与lua 的兼容模式包含了语法以及bbytecode 说明 lua 这个小语法在实际应用中还是很多的,比如移动端,游戏,waf,nginx,framework 中,以后可以试用下Pluto 参考资料 htt ......
pluto lua

redis中如何保证原子性操作

需求:两个客户端同时对[key1]执行自增操作,不会相互影响 操作:下面两个客户端并发操作会导致[key1]输出结果与预期不一致 [客户端一]读取[key1],值为[1] [客户端二]读取[key1],值为[1] [客户端一]将[key1]自增1,值为[2] [客户端二]将[key1]自增1,值为[ ......
原子 redis

Lua中优雅的异步封装

注:下面应用场景主要针对Unity引擎 + Lua方案。其他问题可以参考类似思想进行解决 问题 在我们日常使用异步的一些接口进行编码的时候,经常会遇到这样的问题: 使用异步回调的方式,当有复杂的嵌套业务,使得回调内需要嵌套回调,导致这个业务的逻辑无法像同步业务那样清晰直观的展现 异步编码方式对业务人 ......
Lua

分布式事务管理

南航航班号sno,日期sdate,国航航班号zno,日期zdate,姓名uname,身份证号uid,用户账号uno,电商账号bno 根代理ROOT begin transcation; input(sno, sdate, zno, zdate, uname, uid, uno, bno); EXEC ......
事务管理 分布式 事务

redis 浅谈2

最近在redis上遇到一个问题,就是刷新redis缓存的时候,缓存里面开始一个map ,但是缓存还没有刷新完成 ,比如 map里面有n 个filed ,但是刷新了 m 个就被别的线程使用了,导致数据不完善 解决办法: map 设置完成后在写入缓存中 ......
redis

redis 问题浅谈

redis 缓存击穿 redis 如果缓存不存在就会请求到数据库,这里有个问题就是如果请求一个数据库不存在的数据,那么就会一直请求数据库,redis没有起到作用 1 接口过滤,做第一步过滤 2 我们可以把这个不存在的数据也缓存一个null到redis中,设置一个过期时间 3 布隆过滤器,待续 雪崩 ......
问题 redis

中间件 ZK分布式专题与Dubbo微服务入门 4-7 watcher常用使用场景

0 课程地址 https://coding.imooc.com/lesson/201.html#mid=12703 1 重点关注 1.1 watcher常用使用场景 集群中统一资源配置 2 课程内容 3 Coding ......
分布式 中间件 场景 常用 watcher

中间件 ZK分布式专题与Dubbo微服务入门 4-4 理解watcher机制

0 课程地址 https://coding.imooc.com/lesson/201.html#mid=12700 1 重点关注 1.1 理解watcher机制 针对每个节点的操作,都会有一个监督者 wathcer 当监控的某个对象 ( znode) 发生了变化,则触发watcher事件 zk中的w ......
分布式 中间件 机制 watcher 专题

Redis缓存三剑客

缓存穿透 概念:查询一个不存在的数据,mysql查询不到数据也不会直接写入缓存,就会导致每次请求查数据库从而使得数据库压力过大,宕机 解决方案一: 缓存空数据,查询返回的数据为空,扔把这个空结果进行缓存例如格式:{key:xxx,value:null} 优点:简单 缺点:消耗内存,可能会发生不一致的 ......
三剑客 缓存 Redis

lua变量

一)全局-局部变量 全局变量是指:这个变量在没有被同名局部变量覆盖的时候,所有代码块都是可见的。 局部变量是指:该变量只在被申明的代码块中可见,并且可以覆盖同名全局变量或者外层局部变量。 Lua 中的局部变量要用 local 关键字来显式定义,不使用 local 显式定义的变量就是全局变量:g_va ......
变量 lua

lua时间操作

在 Lua 中,函数 time、date 和 difftime 提供了所有的日期和时间功能。在 OpenResty 的世界里,不推荐使用这里的标准时间函数,因为这些函数通常会引发不止一个昂贵的系统调用,同时无法为 LuaJIT JIT 编译,对性能造成较大影响。推荐使用 ngx_lua 模块提供的带 ......
时间 lua

lua模块

从lua5.1开始,Lua 加入了标准的模块管理机制,Lua 的模块是由变量、函数等已知元素组成的 table, 因此创建一个模块很简单,就是创建一个 table,然后把需要导出的常量、函数放入其中,最后返回这个 table 就行。 一)模块定义 模块的文件名 和 模块定义引用名称要一致 -- 文件 ......
模块 lua

lua元表

举个例子,在 Lua table 中我们可以访问对应的key来得到value值,但是却无法对两个 table 进行操作。 那如何计算两个table的相加操作a+b? local t1 = {1,2,3}local t2 = {4,5,6} local t3 = t1 + t2 > {1,2,3,4, ......
lua

lua面向对象

面向对象编程(Object Oriented Programming,OOP)是一种非常流行的计算机编程架构。java,c++,.net等都支持面向对象 面向对象特征1) 封装:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。2) 继承:继承的方法允许在不改动原程序的基础上对其进行扩 ......
对象 lua

lua的string操作

string的相关操作 1)string.upper(s)接收一个字符串 s,返回一个把所有小写字母变成大写字母的字符串。print(string.upper("Hello Lua")) -->output HELLO LUA 2)string.lower(s)接收一个字符串 s,返回一个把所有大写 ......
string lua

lua的table操作

Lua中table内部实际采用哈希表和数组分别保存键值对、普通值;下标从1开始 不推荐混合使用这两种赋值方式。 local color={first="red", "blue", third="green", "yellow"} print(color["first"]) --> output: r ......
table lua

lua的正则表达式

lua的正则表达式 与其他脚本语言不同的是,Lua并不使用POSIX规范的正则表达式[4](也写作regexp)来进行模式匹配。主要的原因出于程序大小方面的考虑:实现一个典型的符合POSIX标准的regexp大概需要4000行代码,这比整个Lua标准库加在一起都大。权衡之下,Lua中的模式匹配的实现 ......
正则 表达式 lua

lua控制结构

lua控制结构一 一)条件 - 控制结构 if-elseif-else 是我们熟知的一种控制结构。Lua 跟其他语言一样,提供了 if-else 的控制结构。 1)单个 if 分支 型 if 条件 then --body end条件为真 ,执行if中的body x = 10if x > 0 then ......
结构 lua

lua运算符

一)算术运算符 + 加法 - 减法 * 乘法 / 除法 % 取余 ^ 乘幂 - 负号 print(1 + 2) -->打印 3print(5 / 10) -->打印 0.5。 这是Lua不同于c语言的print(5.0 / 10) -->打印 0.5。 浮点数相除的结果是浮点数-- print(10 ......
运算符 lua

lua语法四table表

一)table (表)Table 类型实现了一种抽象的“关联数组”。即可用作数组,也可以用作map。lua中没有数组和map,都是用table这个类型 --数组java int[] intArr = new int[]{1,2,3,4,5,6};intArr[0]intArr[1]--map > k ......
语法 table lua

NOSQL redis配置与优化

NOSQL与NOSQL 关系型数据库 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。 SQL 语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。 主流的关系型数据库包括 Oracle、MySQL、SQL Ser ......
NOSQL redis

Redis常见阻塞原因总结

Redis常见阻塞原因总结 1. O(n) 命令 Redis 中的大部分命令都是 O(1)时间复杂度,但也有少部分 O(n) 时间复杂度的命令,例如: KEYS *:会返回所有符合规则的 key HGETALL:会返回一个 Hash 中所有的键值对 LRANGE:会返回 List 中指定范围内的元素 ......
常见 原因 Redis

分布式架构设计思路和要点

分布式架构设计 设计分布式架构时,需要考虑以下几个关键思路和要点: 弹性和可伸缩性:分布式架构应具备弹性和可伸缩性,能够根据负载情况自动调整资源分配。这可以通过采用水平扩展和自动化调度等技术实现。 容错和高可用性:分布式系统应具备容错和高可用性能力,即使部分组件或节点发生故障,整个系统仍能正常运行。 ......
分布式 架构 要点 思路

redis小记

redis 1、redis是一款c语言编写的基于内存的kv存储,是目前市面上最流行的nosql开源项目,常用于缓存场景(优点高性能/寻址更快,缺点易失存储/价格更高) 2、redis快的原因:纯内存操作、单线程避免上下文切换、采用非阻塞IO多路复用机制(1个线程监控多个连接,一旦某个连接就绪,就能够 ......
小记 redis

Redis内存碎片

Redis内存碎片(不会影响 Redis 性能,但会增加内存消耗) 1. 什么是内存碎片? 你可以将内存碎片简单地理解为那些不可用的空闲内存 举个例子:操作系统为你分配了 32 字节的连续内存空间,而你存储数据实际只需要使用 24 字节内存空间,那这多余出来的 8 字节内存空间如果后续没办法再被分配 ......
碎片 内存 Redis
共6000篇  :3/200页 首页上一页3下一页尾页