脚本springboot redis lua
redis中如何保证原子性操作
需求:两个客户端同时对[key1]执行自增操作,不会相互影响 操作:下面两个客户端并发操作会导致[key1]输出结果与预期不一致 [客户端一]读取[key1],值为[1] [客户端二]读取[key1],值为[1] [客户端一]将[key1]自增1,值为[2] [客户端二]将[key1]自增1,值为[ ......
Lua中优雅的异步封装
注:下面应用场景主要针对Unity引擎 + Lua方案。其他问题可以参考类似思想进行解决 问题 在我们日常使用异步的一些接口进行编码的时候,经常会遇到这样的问题: 使用异步回调的方式,当有复杂的嵌套业务,使得回调内需要嵌套回调,导致这个业务的逻辑无法像同步业务那样清晰直观的展现 异步编码方式对业务人 ......
光速爱购--靠谱的SpringBoot项目
这是一个靠谱的SpringBoot项目实战,名字叫光速爱购。从零开发项目,视频加文档,十天就能学会开发JavaWeb项目。 ......
redis 浅谈2
最近在redis上遇到一个问题,就是刷新redis缓存的时候,缓存里面开始一个map ,但是缓存还没有刷新完成 ,比如 map里面有n 个filed ,但是刷新了 m 个就被别的线程使用了,导致数据不完善 解决办法: map 设置完成后在写入缓存中 ......
redis 问题浅谈
redis 缓存击穿 redis 如果缓存不存在就会请求到数据库,这里有个问题就是如果请求一个数据库不存在的数据,那么就会一直请求数据库,redis没有起到作用 1 接口过滤,做第一步过滤 2 我们可以把这个不存在的数据也缓存一个null到redis中,设置一个过期时间 3 布隆过滤器,待续 雪崩 ......
springboot
介绍 Spring回顾 Spring(容器)是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson 。 Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。 Spring是如何简化Java开发的 为了降低Java开发的复杂性,Spring采用了以下 ......
Redis缓存三剑客
缓存穿透 概念:查询一个不存在的数据,mysql查询不到数据也不会直接写入缓存,就会导致每次请求查数据库从而使得数据库压力过大,宕机 解决方案一: 缓存空数据,查询返回的数据为空,扔把这个空结果进行缓存例如格式:{key:xxx,value:null} 优点:简单 缺点:消耗内存,可能会发生不一致的 ......
lua变量
一)全局-局部变量 全局变量是指:这个变量在没有被同名局部变量覆盖的时候,所有代码块都是可见的。 局部变量是指:该变量只在被申明的代码块中可见,并且可以覆盖同名全局变量或者外层局部变量。 Lua 中的局部变量要用 local 关键字来显式定义,不使用 local 显式定义的变量就是全局变量:g_va ......
lua时间操作
在 Lua 中,函数 time、date 和 difftime 提供了所有的日期和时间功能。在 OpenResty 的世界里,不推荐使用这里的标准时间函数,因为这些函数通常会引发不止一个昂贵的系统调用,同时无法为 LuaJIT JIT 编译,对性能造成较大影响。推荐使用 ngx_lua 模块提供的带 ......
lua模块
从lua5.1开始,Lua 加入了标准的模块管理机制,Lua 的模块是由变量、函数等已知元素组成的 table, 因此创建一个模块很简单,就是创建一个 table,然后把需要导出的常量、函数放入其中,最后返回这个 table 就行。 一)模块定义 模块的文件名 和 模块定义引用名称要一致 -- 文件 ......
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面向对象
面向对象编程(Object Oriented Programming,OOP)是一种非常流行的计算机编程架构。java,c++,.net等都支持面向对象 面向对象特征1) 封装:指能够把一个实体的信息、功能、响应都装入一个单独的对象中的特性。2) 继承:继承的方法允许在不改动原程序的基础上对其进行扩 ......
lua的string操作
string的相关操作 1)string.upper(s)接收一个字符串 s,返回一个把所有小写字母变成大写字母的字符串。print(string.upper("Hello Lua")) -->output HELLO LUA 2)string.lower(s)接收一个字符串 s,返回一个把所有大写 ......
lua的table操作
Lua中table内部实际采用哈希表和数组分别保存键值对、普通值;下标从1开始 不推荐混合使用这两种赋值方式。 local color={first="red", "blue", third="green", "yellow"} print(color["first"]) --> output: r ......
lua的正则表达式
lua的正则表达式 与其他脚本语言不同的是,Lua并不使用POSIX规范的正则表达式[4](也写作regexp)来进行模式匹配。主要的原因出于程序大小方面的考虑:实现一个典型的符合POSIX标准的regexp大概需要4000行代码,这比整个Lua标准库加在一起都大。权衡之下,Lua中的模式匹配的实现 ......
lua控制结构
lua控制结构一 一)条件 - 控制结构 if-elseif-else 是我们熟知的一种控制结构。Lua 跟其他语言一样,提供了 if-else 的控制结构。 1)单个 if 分支 型 if 条件 then --body end条件为真 ,执行if中的body x = 10if x > 0 then ......
lua运算符
一)算术运算符 + 加法 - 减法 * 乘法 / 除法 % 取余 ^ 乘幂 - 负号 print(1 + 2) -->打印 3print(5 / 10) -->打印 0.5。 这是Lua不同于c语言的print(5.0 / 10) -->打印 0.5。 浮点数相除的结果是浮点数-- print(10 ......
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 ......
springboot配置
手动配置springboot <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-i ......
iis 重启脚本
1.新建一个记事本,命名为IIS.txt 2.打开IIS.txt记事本,添加如下代码 3..另存为IIS.bat即可,双击IIS.bat就开始批处理命令。 方案1: @echo off net stop iisadmin /yes net start iisadmin net start w3svc ......
NOSQL redis配置与优化
NOSQL与NOSQL 关系型数据库 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。 SQL 语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。 主流的关系型数据库包括 Oracle、MySQL、SQL Ser ......
Redis常见阻塞原因总结
Redis常见阻塞原因总结 1. O(n) 命令 Redis 中的大部分命令都是 O(1)时间复杂度,但也有少部分 O(n) 时间复杂度的命令,例如: KEYS *:会返回所有符合规则的 key HGETALL:会返回一个 Hash 中所有的键值对 LRANGE:会返回 List 中指定范围内的元素 ......
我用ChatGPT实现一个文档+图片处理脚本
AI爆文变现项目,我遇到一个问题。(实操教程放在文末了) 就是用AI小蜜批量写作脚本批量生成的文章没有图片。 这两天我去平台发布文章时候,没图,需要手动的插入图片。 这个过程实在太痛苦了。 统计了一下,这么操作一篇文章,发布时间大概需要1.5分钟左右。 于是就想到了一个本地图片插入到文档的解决方案。 ......
SpringBoot的多数据源以及事务解决方案(下)
SpringBoot的多数据源以及事务解决方案(下) 下面1-3实现方法来之看过的文章SpringBoot 多数据源及事务解决方案,4后为自己项目中用到的方法 多数据源事务处理 1.1 关于事务的理解 首先我们先理解下事务的本质 提到Spring事务,就离不开事务的四大特性和隔离级别、七大传播特性。 ......
IDEA使用阿里镜像服务创建SpringBoot项目
问题: 经常通过IDEA的spring initializr创建springboot项目会报超时 解决方案 创建时用阿里镜像服务:https://start.aliyun.com 结果 秒创建 ......
SpringBoot Web开发静态资源处理
Web开发探究 简介 其实SpringBoot的东西用起来非常简单,因为SpringBoot最大的特点就是自动装配 使用SpringBoot的步骤: 1、创建一个SpringBoot应用,选择我们需要的模块,SpringBoot就会默认将我们的需要的模块自动配置好 2、手动在配置文件中配置部分配置项 ......
SpringBoot如何正确配置静态资源的访问
使用SpringBoot搭建web项目时静态资源的访问必然是一个需要考虑的问题,不过SpringBoot在对于静态资源访问的问题上已经做了很好的支持,下面就静态资源访问的正确姿势进行说明。 一、静态资源配置 SpringBoot默认从以下几个目录访问静态资源: /META-INF/resources ......
redis小记
redis 1、redis是一款c语言编写的基于内存的kv存储,是目前市面上最流行的nosql开源项目,常用于缓存场景(优点高性能/寻址更快,缺点易失存储/价格更高) 2、redis快的原因:纯内存操作、单线程避免上下文切换、采用非阻塞IO多路复用机制(1个线程监控多个连接,一旦某个连接就绪,就能够 ......
在springboot中设置将LocalDateTime转换为yyyy-MM-dd HH:mm:ss格式
问题 在系统进行时间查询时,返回给系统的时间格式不正确,要将他改为yyyy-MM-dd HH:mm:ss格式 解决 方法一 在实体类中添加注解 //@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTim ......
7、SpringBoot2之整合事务及AOP
本文在SpringBoot2之整合Mybatis的基础上进行 7.1、整合事务 7.1.1、mapper接口 int deleteEmployeeById(int id); 7.1.2、mapper映射文件 <delete id="deleteEmployeeById" parameterType= ......