Lua 时间日期处理与时区
系统梳理 Lua 的时间日期处理:os.time、os.date、os.clock 的语义与常见陷阱,UTC 与本地时间的转换、时区偏移计算、时间差与格式化解析,以及高精度计时、单调时钟与跨时区服务的工程实践与最佳建议,帮助后端开发者避开时间陷阱。
tag
系统梳理 Lua 的时间日期处理:os.time、os.date、os.clock 的语义与常见陷阱,UTC 与本地时间的转换、时区偏移计算、时间差与格式化解析,以及高精度计时、单调时钟与跨时区服务的工程实践与最佳建议,帮助后端开发者避开时间陷阱。
梳理 Lua 在嵌入式与 IoT 领域的落地实践:从 eLua、NodeMCU 到 ESP32,讲清 Lua 虚拟机的裁剪方法、GPIO/I2C/SPI 硬件访问、内存与固件约束,以及 OTA 热更新在设备端的实现思路,帮助你在资源受限设备上稳定运行脚本。
讲解 Lua 与 WebAssembly 的互操作实践:用 Emscripten 把 Lua 编译成 wasm、借助 Wasmoon 在浏览器运行 Lua、通过 WASI 在服务端沙箱执行脚本,并剖析内存模型、JS 数据桥接、性能取舍与插件沙箱的工程落地。
深入 Lua 的数值模型与位运算:讲清 5.3+ 的 integer/float 双类型、整数溢出的环绕语义、位运算符与标志位/哈希/位域压缩等实用技巧,并给出浮点精度比较、数值格式化与金额计算的工程建议,助你在协议解析等底层场景写出精确代码。
梳理 Lua 生态中常用的序列化与数据交换格式:从 string.format 手写序列化、load 反序列化,到 cjson、MessagePack、CBOR 等库的选型与性能对比,并给出游戏存档、配置加载与跨语言通信中的落地建议与安全边界。
系统讲解 Lua 内存泄漏的检测与定位方法:用 collectgarbage 建立内存基线、通过弱引用表与快照对比定位悬挂引用,并逐一剖析全局变量污染、闭包 upvalue 持有、回调未注销、缓存无上限等常见泄漏源的成因与修复手段,助你快速定位线上内存问题。
本导航把 content/posts/game/server/skynet 下的 17 篇 Skynet 框架文章按学习顺序重新编目,覆盖环境搭建与核心概念、服务模型与消息传递、Lua API 参考、WebSocket 网关实现、cluster 集群通信、MySQL 与 Redis 数据集成、性能调优、热更新机制、调试排障与生产部署最佳实践,并以一个完整的多人对战服务器实例收尾。既有按主题组织的速查表,也有分阶段的学习路径与核心机制速查,适合第一次接触 Skynet 的 Lua 开发者,也适合已经上线、想补齐集群与热更新能力的服务端团队。
Redis 脚本与 Functions 工程化指南:EVAL/EVALSHA/SCRIPT LOAD 脚本缓存与 NOSCRIPT 处理、Lua 沙箱与 redis.call/redis.pcall 差异、KEYS/ARGV 键声明与集群槽位校验、Redis 7.0 FUNCTION LOAD/FCALL/FCALL_RO 函数库注册与
本导航收录 content/posts/game/engine/defold 下的 2 篇文章,全部围绕轻量游戏引擎 Defold 的脚本语言选择展开。一篇系统梳理在 Defold 中使用 Lua 写游戏逻辑的优势与局限,另一篇回答一个被反复问到的问题:能不能用 Python 来做 Defold 开发。两篇合起来正好界定了 Defold 的能力边界与协作约束,适合评估轻量引擎是否适配自己团队、或者已经在用 Defold 却对技术栈有疑问的开发者快速定位答案。
从 Defold 原生组件模型出发,讲清 ECS 思想在 Lua 项目中的落地方式:Entity 与 Component 的职责划分、System 与更新循环、脚本模块划分与目录规范、消息驱动的事件解耦,以及常见架构反模式与重构路径,帮助中型项目长期保持可维护性。
深入 Nginx Lua 扩展与 OpenResty 实践,覆盖 Lua 指令与请求生命周期钩子、动态逻辑与灰度决策、lua-resty 常用库(redis/http/dns)、LuaJIT 性能优化与安全边界,给出从普通 Nginx 平滑演进到 OpenResty 的完整路径。
系统讲解 Defold 性能分析与调试全家桶:内置 Profiler(CPU/GPU/内存)、Draw Call 统计、Lua 内存泄漏排查、消息流量分析、Web Profiler 远程调试、HTML5 调试、日志级别与断言、VS Code 调试集成。
系统搭建 Lua 性能剖析与调试工具链:luaprofiler 采样剖析、debug 库的 hook 与 upvalue 检查、LuaLS 语言服务的静态诊断、busted 集成性能回归,以及用自定义采样器生成性能火焰图的完整思路。
在 OpenResty 上用 Lua 实现 Web 应用防火墙:请求生命周期各阶段的安全介入点、滑动窗口限流与令牌桶、IP 黑名单与动态封禁、参数校验与防注入,以及 lua-resty-waf 规则引擎的接入与安全注意事项。
把经典设计模式落到 Lua 里:单例、工厂、观察者、状态机、命令模式如何用 table、元表与闭包实现,每种模式在 Lua 里的简化形态,以及与面向对象风格的差异和取舍。
在 Rust 与 Go 宿主中嵌入 Lua:mlua 与 gopher-lua 的 API 实战、C ABI 边界成本、跨语言数据传递的类型映射与序列化开销,以及 LuaJIT 与 PUC Lua 在不同宿主下的性能权衡。
系统梳理 Lua 的并发模型:单线程与事件循环的本质、阻塞与非阻塞 IO、单线程 worker 池架构,以及 lua-lanes、Luaproc 等多线程方案与 C 线程协作的方法,最后给出不同场景的并发选型建议。
深入 Lua table 的内部内存模型:数组部分与哈希部分的分区存储规则、rehash 扩容与收缩机制、紧凑表的边界效应、内存占用估算方法,以及如何从内存布局层面减少碎片与 GC 压力的工程实践。
全面掌握 LuaRocks 包发布流程:包目录结构、rockspec 编写规范、语义化版本与依赖管理、GitHub Actions 自动化测试与发布,以及命名空间与生态分发的最佳实践。
探索 Lua 在 AI 时代的角色:Lua 作为 Agent 脚本语言与 LLM 调用封装、基于协程的多步工作流编排、游戏 NPC 行为树与 LLM 驱动动态内容生成,以及成本、延迟与安全的工程实践。