文章目录
- gotify/server:自己搭一个消息推送服务
- 它能做什么
- 生态比较完整
- 适合什么场景
- 实际用起来的感受
- 总结
gotify/server:自己搭一个消息推送服务
很多开发者都需要消息推送功能,但市面上的方案要么依赖第三方平台,要么收费不低。gotify/server 这个项目提供了一条不一样的路:自己搭一个推送服务器,数据完全掌握在自己手里。目前它在 GitHub 上拿到了 15,082 个 Star,说明有这个需求的人不在少数。
它能做什么
gotify/server 的核心功能很清晰:发消息、收消息、管权限。
发消息走 REST API,几行代码就能集成到现有系统里。收消息用 WebSocket,实时性有保障。它还带了一套 Web 管理界面,可以创建用户、分配客户端、管理应用,适合小团队或者个人项目直接用。
生态比较完整
这个项目不只是个服务端程序,周边工具也配齐了。
有命令行工具 gotify/cli,方便在脚本里直接发通知。有 Android 客户端,手机上能实时收到推送。还支持插件扩展,可以自己写逻辑对接其他系统。Docker 镜像也准备好了,部署起来不算麻烦。
如果你用的是 Go 技术栈,集成成本会更低。源码是 MIT 协议,想改什么都可以。
适合什么场景
第一类是个人开发者。自己的项目需要报警或者状态通知,又不想接第三方平台,gotify 就是一个轻量选择。第二类是小团队。内部系统需要推送,但用量不大,自建比买商业服务划算。第三类是对数据敏感的项目。消息内容不想经过外部服务器,自己托管更放心。
实际用起来的感受
部署确实简单,Docker 一行命令就能跑起来。API 设计也直观,curl 测试几下就能上手。Web 界面朴素但够用,发测试消息、看历史记录、管用户权限都能完成。
当然它也有局限。iOS 没有官方客户端,苹果生态的用户需要另想办法。界面美观程度跟商业产品比有差距,要求高的话可能需要自己改前端。插件生态还在发展中,复杂需求可能要自己写代码。
总结
gotify/server 是个务实的工具,解决了一个具体的问题:自建消息推送。它不试图做更多,但把核心功能做扎实了。如果你正好需要这个能力,值得一试。
不试图做更多,但把核心功能做扎实了。如果你正好需要这个能力,值得一试。