分类 技术干货 下的文章

在 EMQX 中使用规则引擎记录 MQTT 消息日志(正确处理 Retain 参数)当你在 EMQX 中创建规则:SELECT * FROM "#"并配置动作将消息转发到“日记主题”(如 journal/log)时,原始订阅者仍然应该能正常收到消息。 如果你发现“所有消息都被日记主题消费了”,很可能是对 Retain(保留消息) ...

RabbitMQ 消息“偶发丢失”排查与解决方案(千万级场景)🔍 问题现象手动测试正常,但千万级消息中偶发少量缺失发送端已启用 Publisher Confirm,消费端使用 @RabbitListener🚨 根本原因:队列配置限制1. x-max-length: 5000000行为:队列超过 500 万条时,自动丢弃最旧消息(head drop)后果...

Kotlin vs Java:数据类型深度解析——告别空指针,拥抱类型安全!写给 Java 开发者的 Kotlin 类型系统入门指南 你是否曾因 NullPointerException 彻夜调试?是否厌倦了冗长的 getter/setter 和类型转换陷阱?Kotlin 不仅语法简洁,其类型系统更是对 Java 的一次优雅进化。本文将带你深入 Ko...

Linux 会话数监控实战指南:轻松搞定“低于最大会话数80%”的检测与分析1 引言:为什么“会话数低于80%阈值”值得关注?在 Linux 系统运维中,“会话数”是衡量服务负载与资源利用率的核心指标之一。无论是数据库连接、Web 服务请求,还是系统登录会话,其数量变化直接反映了服务的运行状态。而“会话数低于最大会话数80%”这一条件,并非简单的数字比...

揭秘“间歇性失联”:手把手教你诊断国外网站是否被中国防火墙屏蔽在国内访问 GitHub 时快时慢?Stack Overflow 今天能打开明天就“404”?你可能不是网络出了问题,而是撞上了国家网络监管的“动态策略”。本文将带你深入 GFW(Great Firewall)的运作机制,用技术手段精准判断一个域名是否被封、如何被封,以及为何“有时能访问,有...

从零到一:手把手在 Ubuntu 上部署企业级邮件系统 mailcow(避坑指南)📬 你是否厌倦了 Gmail 的广告?是否想拥有完全自主可控的邮箱?本文将带你从裸机开始,在 Ubuntu 服务器上部署功能完整、界面现代、安全可靠的开源邮件系统 mailcow,并解决安装过程中最棘手的“容器健康检查失败”问题。1. 准备工作:为 mailcow 打造完...

🌐 一文彻底搞懂 Let's Encrypt 泛域名证书自动续期:告别手动配置,拥抱自动化运维在现代 Web 开发与运维中,HTTPS 已成为标配。而 Let's Encrypt 作为免费、自动化、开放的证书颁发机构(CA),极大降低了 HTTPS 的使用门槛。然而,当你需要为 *.yourdomain.com 这样的泛域名(Wildcard)申请证书...