这篇文章基于我在日本东京 GoCon Spring 2018什么是映射函数要明白 map 是如何工作的的,我们需要先讨论一下 map 函数。一个 map 函数用以将一个值映射到另一个值。给定一个值,我们叫 key,它就会返回另外一个值,称为 value。  map(key) → value  现在,map 还没什么用,除非我们放入一些数据。我们需要一个函数来将数据添加到 map 中  insert            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-12 10:29:53
                            
                                43阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Nginx Lua 获取 Redis Key 值
## 概述
在现代 Web 开发中,缓存机制扮演着至关重要的角色。为了提高 Web 应用的性能和响应速度,我们常常会使用 Redis 作为缓存存储解决方案。Nginx,作为一种高效的反向代理服务器,不仅可以用于处理 HTTP 请求,还可以通过 Lua 模块与 Redis 进行交互,从而实现高效的数据存取。本文将介绍如何使用 Nginx Lu            
                
         
            
            
            
            1. C/C++ 代码中的传入参数解析这一部分主要介绍如何在代码中获取lua 脚本传入的参数。1.1 获取传入参数的个数int testFunc(lua_State *L) 
{
    int it = lua_gettop(L);   // 获取参数的个数    
    printf("prams = %d\n",it);
    return 0;
}1.2 获取一些简单的参数 numbe            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-28 10:16:58
                            
                                176阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              Nginx+Tomcat+cluster集群搭建Tomcat1 --> 带有newrelic的主Tomcat复制版本Tomcat2 --> 纯净的相同版本的TomcatNginx1.8SSL证书原始文件和密码安装Nginxnginx1.8 download - http://nginx.org/download/nginx-1.8.0.tar.gz
	安装nginx支持文件:
	!            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-02 06:31:42
                            
                                48阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             本来打算3天将lua学完,无奈lua语法实在有点难记,所以还是好记性不如烂笔头,记录一下学习内容。  首先介绍一下lua的table,这是一个key-value型映射,可以动态增长。功能十分强大,并且lua只提供这一种容器。这也是为啥经常忘记的原因,因为仔细学起来有很多东西需要思考。  1. table之数组   这里的数组就是最简单的用整数来索            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-25 12:36:10
                            
                                101阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Lua获取Redis Key的创建时间
Redis是一种快速、开源的内存键值数据库,常被用作缓存、队列等应用场景。在使用Redis时,我们经常需要获取键(key)的创建时间。本文将介绍如何使用Lua脚本来获取Redis Key的创建时间,并提供相应的代码示例。
## Redis与Lua
Redis支持使用Lua脚本来操作数据,通过执行Lua脚本可以在Redis中实现复杂的逻辑。Lua是一            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-04 07:10:14
                            
                                43阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录1._.slice(array, [start=0], [end=array.length])——裁剪数组array,从 start 位置开始到end结束,但不包括 end 本身的位置。2._.sortedIndex(array, value)——使用二进制的方式检索来决定 value值应该插入到数组中尽可能小的索引位置,以保证array的排序            
                
         
            
            
            
            3.1键盘录入的基本步骤3.1.1键盘录入数据概述我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,所以,把数据改进为键盘录入,提高程序的灵活性。键盘录入数据的步骤:A:导包(位置放到class定义的上面)import java.util.Scanner;B:创建对象Scanner sc = new Scanner(System.in);C:接收数据int x = sc            
                
         
            
            
            
            在处理 Redis 相关的项目时,使用 Lua 脚本能够极大地提升性能,尤其是在执行复杂事务和聚合操作时。然而,涉及到 Redis 与 Lua 脚本的关键操作及配置,常常会造成一些问题。本文将通过多个部分详细记录使用 Redis Lua 的 `key` 类型问题的解决过程,涵盖从环境准备到生态扩展的全流程。
## 环境准备
### 技术栈兼容性
要确保我们的技术栈能够顺利运行 Redis 与            
                
         
            
            
            
            因为我们在前面已经花了大量的时间来学习lua,所以我们在本节就会结束xlua的部分。2.3更轻量的by value方式:映射到dictionary<>,list<>。不想定义class或者interface的话,我们可以考虑用这个,前提table下key和value的类型都是一致的。Dictionary<string, object> dict = luaenv            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-17 16:25:05
                            
                                92阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            lua中表的实现原理为:按照key的数据类型分成数组部分和散列表部分,数组部分用于存储key值在数组大小范围内的键值对,其余数组部分不能存储的键值对则存储在散列表部分。表的数据结构typedef struct Table {
  CommonHeader;
  lu_byte flags;  /* 第8位为0,则表示alimit为数组的实际大小,否则需重新计算 */
  lu_byte lsize            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-20 14:32:36
                            
                                190阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            整理一下Lua的基本语法和常识。全局变量Lua中,全局变量无需声明即可使用,使用未初始化的全局变量也不会导致错误,只是结果为nil,nil是一种和其他所有值进行区分的类型,表示无效的值,一个全局变量在第一次被赋值前的默认值就是nil,而将nil赋值给全局变量则相当于将其删除。Boolean类型 Lua中将除false和nil外的所有其他值视为真。
not只返回true或false。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-16 11:44:31
                            
                                136阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                   GUIReader中有个widgetFromJsonFile的方法,此方法是用于解析json文件(cocostudio生成的UI的)并返回该文件的父节点(Widget),然后便于进一步的UI操作(如获得各种子类进行填充数据作显示等)。       那么这时候问题就来了,当须要在一个页面或一个控件(尤其是翻            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-30 20:03:03
                            
                                173阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.Redis键keys * #查看所有键
   set key value
   exists key  #判断某个key是否存在
   move key db  #从当前库移除
   expire key 秒钟  #为给定的key设置生存时间
   ttl key #查看还有多少秒过期2.字符串Stringset key value #设置值
   get key       #获得key的值            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-08 19:34:22
                            
                                97阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            MD5加密生成的密钥是固定的32位,而Base64加密和DES加密,生成的密钥不是固定。现在假如要将用户登录的密码进行加密并存入数据库,MD5加密与DES加密相结合的方式是不错的选择。因为DES加密可逆,但是较之MD5难破解些,一般银行卡账户使用的就是这种算法;另外MD5生成固定的32位密钥,便于在数据库中存储,字段长度不变,不会浪费空间。下面就看看怎样进行加密吧。MD5加密工具类1. 
1. &            
                
         
            
            
            
            lua与c++的调用本文虽然有涉及但是,这不是我今天向大家推荐的内容,今天向大家写的示例代码是lua如何构建控制和任务逻辑以及与主线程进行控制子线程程执行的方式。不熟悉windows下多线程的童鞋可以翻翻本人的多线程的相关文章,也可以自己从网上学习下多线程的编写,以及如何合理的退出线程。这样编写代码可以做到,架构灵活,业务可变更性非常强,只要实现好底层算法性代码,业务逻辑尽量交给脚本语言吧,查错方            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-24 10:42:12
                            
                                30阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Redis Lua 过滤 Key
在 Redis 中,我们经常需要使用某种方法来过滤和查询相关的键值对。Redis 提供了一种强大的功能,即使用 Lua 脚本来执行这些操作。本文将介绍如何使用 Redis Lua 脚本进行键过滤,并提供相应的代码示例。
## Lua 脚本介绍
Lua 是一种轻量级的脚本语言,被广泛应用于各种领域,包括游戏开发、嵌入式系统和服务器端编程。Redis 内置了            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-05 10:00:02
                            
                                42阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # 基于 Redis 的 Lua 脚本限流机制
## 背景
在现代的互联网应用中,流量控制是一个至关重要的环节。为了保证服务的稳定性与可用性,防止恶意请求或突发流量对系统造成影响,限流技术常被广泛应用。Redis,以其高性能和简单易用的特点,成为了限流场景中常用的解决方案。结合 Lua 脚本,可以实现高效的原子操作,从而有效地控制请求流量。
## 什么是限流?
限流是一种流量管理策略,通常            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-08-10 07:44:22
                            
                                80阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 基本用法1.1 EVAL script numkeys key [key …] arg [arg …]numkeys 是key的个数,后边接着写key1 key2… val1 val2…,举例127.0.0.1:6379> eval "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 val1 val2
1) "key1"
2)            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-07 10:18:03
                            
                                147阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                    可以通过元表来修改一个值的行为,使其在面对一个非预定义的操作时执行一个指定的操作。当Lua试图将两个table相加时,它会先检查两者之一是否有元表,然后检查该原表中是否有一个叫__add的字段。        Lua在创            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-25 20:37:01
                            
                                114阅读