ICode9

精准搜索请尝试: 精确搜索
  • Lua 调用正则函数2022-05-06 08:33:27

    1、先来个官方的ngx.re.match location /ngx_re_match { default_type text/html; content_by_lua_block { local m, err = ngx.re.match("/live/4001493201083.m3u8", "[0-9]+") if m then -- m[0] == "4001493201083"

  • Lua 数据类型2022-05-06 08:01:17

    Lua 是动态类型语言,变量不要类型定义,只需要为变量赋值。 值可以存储在变量中,作为参数传递或结果返回。 Lua 中有 8 个基本类型分别为:nil、boolean、number、string、userdata、function、thread 和 table。 前面几个看名字就能理解。比较特殊的, userdata表示任意存储在变量中的C

  • Lua 基本语法2022-05-06 07:31:06

    全局变量 默认情况下,变量是全局变量。 全局变量不需要声明,赋值后即创建了这个全局变量,访问一个没有初始化的全局变量也不会出错,只不过得到的结果是nil。 > print(b)nil> b=10> print(b)10> 删除一个全局变量,只需要将变量赋值为nil。 b = nil print(b) --> nil 这样变量b

  • openresty 提供的几个新的生命周期阶段指令2022-05-01 20:03:18

    实际上这几个指令很早就有了,只是最近在重新学习openresty 的时候发现的 exit_worker_by_lua_* 在每次nginx worker 进程退出的时候执行,当master 进行禁用的时候,这个钩子会在nginx 进程退出之前执行主要的场景是进行资源释放,以及worker 非正常退出 server_rewrite_by_lua_* 在serve

  • 使用TypeScriptToLua+openresty-lua-types+docker-compose nginx resty.ipmatcher 集成使用2022-05-01 11:35:06

    还是基于现有的扩展开发的,主要是尝试下 主要内容 包含类型定义以及,安装扩展使用 环境准备 详细介绍可以参考 https://www.cnblogs.com/rongfengliang/p/16210941.html 类型定义 resty-ipmatcher.d.ts declare module "resty.ipmatcher" { interface IpMatcher {

  • 使用TypeScriptToLua+openresty-lua-types+docker-compose 开发nginx 模块服务2022-04-30 19:01:28

    以下核心是一个演示,对于是如何集成的,以前大致有介绍过,通过此主要别大家介绍下如果集成使用 运行环境准备 需要先安装nodejs,docker-compose 参考结构 具体的可以查看github 源码,以下只是示例   运行环境简单说明   version: '3' services: op: build:

  • Lua虚拟机之字节码2022-04-27 01:04:50

     Lua5.2官方手册 http://www.lua.org/manual/5.2/   Lua的字节码在意义上等价于cpu的指令码       字节码对照表。 package lua import ( "fmt" ) /* gopherlua uses Lua 5.1.4's opcodes. Lua 5.1.4 opcodes layout: instruction = 32bit(fixed length

  • 认识 lua jit2022-04-24 12:33:48

    luajit(www.luajit.org)是lua的一个Just-In-Time也就是运行时编译器,也可以说是lua的一个高效版。 原生lua、luajit的jit模式(pc和安卓可用),luajit的interpreter模式(ios下只能运行这个)。   1.jit与interpreter 模式的区别   【jit】 luajit并不是直接将lua转为机器码,而是先以luajit

  • TypeScriptToLua 一些不错的类型定义包2022-04-23 00:32:50

    以下是一个参考资料,lua-types 包含了lua 的语言特性,比较有用,openresty-lua-types 是一个包含了openresty 的后边可以参考这些开发一些openresty 的模块包,实现方便的openresty 开发 参考资料 https://www.npmjs.com/package/lua-typeshttps://github.com/andrei-markeev/openresty-

  • Redis中lua脚本的配合使用2022-04-22 18:31:12

    1.说明 KEYS[1] 用来表示在redis 中用作键值的参数占位,主要用來传递在redis 中用作keyz值的参数。 ARGV[1] 用来表示在redis 中用作参数的占位,主要用来传递在redis中用做 value值的参数。 2.代码范例 2.1 释放redis锁 public boolean releaseDistributedLock(String lockKey, Stri

  • 嵌入式开发之linux---web 服务器Nginx 详解2022-04-18 12:01:12

                              1,nginx的下载 http://nginx.org/en/download.html   选择第二个稳定版下载即可,下载好后解压得到如下目录   其中最主要的配置文件nginx.conf在conf文件夹中 简单介绍下几个nginx命令 start nginx 启动nginxnginx -s reload :修改配置后

  • openresty-lua-types openresty typescript 类型定义2022-04-17 23:34:40

    openresty-lua-types 是利用了TypeScriptToLua 搞一个一个openresty ts 定义,原想是自己搞一个,但是看到社区已经有类似的实现了 值得参考学习下,以下是一个简单的试用 参考代码 package.json   { "name": "myopenresty-lua", "version": "1.0.0", "main":

  • Sysbench介绍概括总结2022-04-14 18:03:59

    概念介绍 sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况,它主要包括以下几种方式的测试:磁盘io性能、数据库性能、内存分配及传输速度等,详细的介绍见https://github.com/akopytov/sysbench 它主要包括以下几种方式的测

  • 通过lua脚本实现双层nginx(一)2022-04-12 16:04:05

    为了支持高并发,需要引入缓存策略,而大型系统的缓存系统更为复杂。由于技术水平有限,现在将目前掌握的缓存架构中的部分知识做一总结。 电商系统缓存系统主要分为三个层级 (下面是自己结合整体系统缓存策略的理解,画的图)   总结一点:第一层是Ngnix缓存,第二层是缓存服务(途中蓝色方框

  • 微服务:多级缓存2022-04-08 03:00:06

    Caffeine JVM进程缓存 缓存在日常开发中启动至关重要的作用,由于是存储在内存中,数据的读取速度是非常快的,能大量减少对数据库的访问,减少数据库的压力。我们把缓存分为两类: 分布式缓存,例如Redis: 优点:存储容量更大、可靠性更好、可以在集群间共享 缺点:访问缓存有网络开销 场景:缓存

  • lua 指定require路径2022-04-07 18:31:51

    在自己的lua文件中,如果使用到了自己写的C库或者第三方库,想让lua编译到自己指定的目录下寻找.lua或。so文件的时候,可以再自己的Lua代码中添加如下代码,可以指定require搜索的路径。 package.path = '/usr/local/share/lua/5.1/?.lua;/home/resty/?.lua;' --搜索lua模块 package.c

  • 使用 LOAD DATA LOCAL INFILE,sysbench 导数速度提升30%2022-04-07 10:03:17

    最近给 sysbench 提了一个 feature(https://github.com/akopytov/sysbench/pull/450),支持通过 LOAD DATA LOCAL INFILE 命令导入压测数据。 下面我们来具体看看这个 feature 的使用方法和实现细节。   下载安装 下载支持 LOAD DATA LOCAL INFILE 命令的 sysbench 分支。 # yum -y

  • redis笔记补充2022-04-05 22:36:02

    redis补充 这篇文章是redis入门笔记的补充。 1.info命令 用来显示服务的信息。 info命令可以跟下面的选项: server: 关于 Redis 服务器的一些信息 clients: 客户端连接部分 memory: 内存消耗相关信息 persistence: RDB和AOF相关信息 stats: 一些统计 replication: 主/副本复制

  • 利用LuaMemorySnapshotDump检查lua内存泄露2022-03-31 17:31:56

    利用LuaMemorySnapshotDump检查lua内存 工具 https://github.com/yaukeywang/LuaMemorySnapshotDump 思路 记录2个时间点的内存快照,然后比对差异。内存检查一般都是这种思路。 操作 直接看 https://github.com/yaukeywang/LuaMemorySnapshotDump/blob/master/README.md 结果 从输

  • 第一章:lua游戏脚本环境2022-03-30 15:04:12

    叉叉助手集成开发环境 windows apk 地址:https://www.crowsong.xyz/2457.html 语言lua 课程 :https://ke.qq.com/webcourse/316583/100375751#taid=2340069981869223&vid=5285890787812501574

  • Lua怎么实现面对对象2022-03-27 11:31:05

    Lua中的table就是一种对象 table和对象一样可以拥有状态 table和对象一样拥有一个独立于其值的标识(一个self): Lua只需要使用冒号,则能隐藏该self参数 able和对象一样具有独立于创建者和创建地的生命周期 local table1 = {a = 1, b = 2} local table2 = {a = 1, b = 2} print(

  • 华为云GaussDB(for Redis)发布全新版本,两大核心特性正式亮相2022-03-27 11:03:45

    近日,华为云GaussDB(for Redis)正式推出全新版本。新版本内核带来性能提升、无损升级、慢日志统计等多维度产品体验,同时推出Lua脚本和SSL连接加密两大重要功能,让业务设计更加灵活,公网访问更安全。 图片 GaussDB(for Redis)是华为云推出的企业级分布式KV数据库,它完全兼容Redis协议,提

  • [wireshark] 添加someip插件2022-03-26 11:31:33

    增加someip插件的步骤: 1.找到安装目录 我的安装路径为:C:\Program Files\Wireshark 2.右键编辑init.lua 在最后增加如下: *dofile("someip.lua") 3.将someip.lua放到安装目录C:\Program Files\Wireshark 4.查看someip的pcap文件:

  • Unity3d 基于xlua热更新实现系列二:Xlua脚本动态加载(半热更新)(含源码)2022-03-21 16:01:55

    前言 之前一直在学习xlua的热更新,不过看了将近一个月的,略知一二了,但仿佛未形成体系,而且看再多,也不如动手实现一下。 遂打算实现一个完整体系热更新的demo,从编码、打包、服务器、下载、热更新等过形成整体的认知。并打算将整个过程进行记录,并分享给大家。 不过这只是个demo,仅

  • Lua表元素去重小测试2022-03-08 17:34:45

    local tab1 = {1,2,3,5,9,7,8} local tab2 = {3,4,5,7,6,2} local tab3,tab4 = {},{} for _,v in pairs(tab2) do tab1[#tab1 + 1] = v end for _,v in pairs(tab1) do tab3[v] = true end for k in pairs(tab3) do tab4[#tab4 +1]= k end table.foreachi(tab4, pri

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有