Show HN: A Go service that exposes a FIFO message queue in RAM
a year ago
- #Message-Queue
- #Go
- #Microservice
- 基于Go语言的单二进制微服务,实现内存FIFO消息队列
- 通过切片+互斥锁和无锁原子计数器平衡简洁性与高吞吐
- 支持HTTP/TLS、结构化日志和健康检查端点,轻松集成微服务架构
- 为瞬时消息(每条≤128KB)提供超低延迟队列功能
- 通过maxBytes/maxMsgs硬性限制保障内存使用安全
- 采用互斥锁+原子计数器的并发安全设计
- 提供JSON指标输出、TLS选项和优雅停机功能
- 包含入队/出队/清空/持久化/加载/指标/健康检查等端点
- 入队出队操作O(1)时间复杂度优化
- 支持优雅停机确保重新部署时消息不损坏
- 内置队列大小、Go协程和文件描述符用量的遥测监控
- 零客户端代码生成,支持curl命令调试的设计
- 支持TLS安全通信协议
- 提供命令行标志和环境变量双重配置方式
- 包含进程监控和告警等生产级部署最佳实践