在 OpenResty(以及标准的 Lua 环境)中,userdata(用户数据) 是一个非常关键但也容易让人感到神秘的数据类型。 简单来说,userdata 是 Lua 脚本和底层 C 语言世界之...
博客广场
openresty里面的userdata是个什么样的概念
第一性原理
“第一性原理”(First Principles Thinking)这个词在现代之所以火遍全网,主要归功于特斯拉和SpaceX的创始人埃隆·马斯克(Elon Musk)。 虽然这个概念有着深厚的哲学底...
MySQL 间隙锁(Gap Lock):前世今生与避坑指南
在使用 MySQL(InnoDB 引擎)时,你是否遇到过这样的灵异事件: 明明只是删除了一行不存在的数据,却导致另一个事务的插入操作被阻塞? 或者明明两个事务操作的是不同的...
“海鞘效应”(Sea Squirt Effect)
“海鞘效应”(Sea Squirt Effect)通常是一个生物学现象衍生出的隐喻,用于形容当一个人或组织进入安逸、固定的环境后,逐渐放弃思考、停止进步,最终导致能力退化的现象...
记一次 Elasticsearch 的写入性能优化
背景与问题现象 最近我们的日志系统遇到了严重的写入瓶颈。架构链路为:应用系统 -> MQ -> Logstash -> Elasticsearch。 ES 集群配置如下: 节点规模:3 节点 存储架构...
MySQL数据库备份脚本
需要本地安装MySQL客户端,有mysqldump命令,支持配置目标数据库的地址,账号密码,支持多个数据库。 使用crontab来启动脚本,实现自定义的备份策略。 #!/usr/bin/env b...
在Cursor中生成中文Git Commit信息
配置 .cursorrules (推荐 – 永久生效) 在项目根目录新建 .cursorrules 文件,填入以下内容: 在生成 Git commit message 时,请遵循以下规则: 必须使用中文。 遵循 Con...
openclaw开发环境运行向导
背景 小龙虾 openclaw是开源项目,作为程序员肯定是想要通过源码来运行,这样对项目不爽的地方可以直接通过修改来改造。 克隆项目 我先fork项目 https://github.com/ope...
一行神奇的好玩的代码
打开任意网站控制台console输入这行代码 const script = document.createElement('script'); script.src = 'https://registry.npmmirror.com/page-agent/1.5.6/files/di...
使用 Harbor 自带的“复制(Replication)”功能迁移harbor仓库
你不需要去底层拷贝数据,也不需要写脚本去一个个 docker pull/push。你可以直接在新 Harbor 的网页后台配置一个“拉取”任务,让新 Harbor 自动去老 Harbor 把所有东西“...
群晖玩转 Docker Macvlan:给容器分配独立内网 IP,完美释放 80/443 端口!
痛点:群晖那霸道的端口占用 很多折腾群晖(Synology DSM)的玩家在用 Docker(Container Manager)部署 Nginx、博客或者反向代理时,都会遇到一个极其恼人的报错:端口...
在群晖 NAS 上部署 Harbor 镜像仓库(避坑全指南)
在普通的 Linux 服务器上部署 VMware Harbor 私有镜像仓库,通常只需要下载、改配置、执行安装脚本三步。但是,如果你想在群晖(Synology DSM)上部署 Harbor,由于群晖...
修复群晖自己访问不到自己机器创建的macvlan网络
这是 Linux 系统使用 macvlan 时一个非常经典的“特性”(不是 Bug)。 为什么群晖自己访问不到? 出于 Linux 内核的安全和隔离机制,当你给 Docker 容器分配了 macvlan ...
Docker Pull 报错 server gave HTTP response to HTTPS client?Harbor + Nginx 反向代理终极填坑指南
📝 场景还原 在部署私有镜像仓库 Harbor 时,为了节省服务器性能并统一管理证书,我们通常会采用这样的经典架构: 外网 Docker 客户端 (HTTPS) 👉 前置 Nginx 反向代理 ...
ubuntu install ssh server in docker
FROM ubuntu:latest Install OpenSSH Server and create necessary directory RUN apt-get update && apt-get install -y openssh-server && \ mkdir /var/run/sshd Set...
教程:在 Claude Code 中通过 Alias 快速切换多账号
在 Claude Code 中,由于默认只读取一个全局配置,切换账号通常比较麻烦。但通过设置环境变量 CLAUDE_CONFIG_DIR 并结合 Shell 别名(Alias),我们可以为不同的账号指...
cursor 首月半价邀请链接
通过这个链接注册的新号,可以享受cursor首月的 Pro, Pro+, or Ultra套餐的50%优惠折扣。 https://cursor.com/referral?code=MIIVEAWK7SUZ
在 Ubuntu 22.04 上从零安装配置 ROS2 Humble
最近开始折腾小机器人,用一台 x86 小主机做主控,装 ROS2 来控制。这篇记录一下在 Ubuntu 22.04 上安装 ROS2 Humble 的完整流程,重点把国内网络环境下踩到的两个坑写...
把厂商的 Keil STM32 固件改用 GCC 在 Linux 上编译:一次完整的移植实录
最近在折腾一台 ROS 小车,底盘是买的成品(STM32F407 主控板),厂商提供了 Keil µVision 工程形式的固件源码。因为是自己组装的底盘,开机自检永远过不了, 板子就主...
告别U盘!如何使用 ADB 远程为小米电视无线安装任意 APK 软件(含“未授权”报错终极解决指南)
买回来的智能电视,最让人头疼的就是系统自带的应用商店软件太少。想安装个第三方视频软件,通常都需要找个 U盘 拷来拷去,非常麻烦。 今天教大家一个极客又优雅的玩法...