首页
/ Centrifugo v6.1.0 发布:实时消息服务器的重要更新

Centrifugo v6.1.0 发布:实时消息服务器的重要更新

2025-06-07 06:20:59作者:秋泉律Samson

Centrifugo 是一个开源的、可扩展的实时消息服务器,它能够通过多种传输协议(如 WebSocket、HTTP-streaming、Server-Sent Events、GRPC 和 WebTransport)即时向在线用户传递消息。Centrifugo 采用了频道(channel)的概念,使其成为一个面向用户的发布/订阅(PUB/SUB)服务器。它语言无关,可以与任何后端结合使用,非常适合构建聊天应用、实时评论、多人在线游戏、实时数据可视化和协作工具等现代架构应用。

自动检测 Redis Cluster 和 TLS 支持

在 Centrifugo v6.1.0 中,最显著的改进之一是自动检测 Redis Cluster 的功能。现代云服务提供商通常为用户提供 redis://host:portrediss://host:port 的 URL,这些 URL 可能对应独立的 Redis 实例或 Redis Cluster。以前,用户需要明确配置集群模式,而现在 Centrifugo 能够自动识别并适应这两种情况,大大简化了在云环境中的部署和配置。

此外,Centrifugo 现在正式支持 rediss 协议,这是 Redis 规范中定义的 TLS 加密连接方式。虽然之前可以通过配置参数启用 TLS,但直接使用 rediss:// 前缀更加符合行业惯例,使得配置更加直观和标准化。

性能优化与兼容性改进

本次更新采用了 Go 1.24.1 进行构建,得益于 Go 1.24 版本引入的性能优化,Centrifugo 的发布/订阅吞吐量得到了显著提升。在 Apple M1 Pro(2021)上的基准测试显示,最大吞吐量从 162 万消息/秒提升到了 174 万消息/秒,性能提升约 7.4%,这对于高负载的实时应用来说是一个重要的进步。

在跨域通信方面,Centrifugo 现在为 HTTP 传输的预检响应和模拟端点预检响应添加了 Access-Control-Max-Age: 300 头。这一改进减少了浏览器在跨域环境下发送预检 OPTIONS 请求的频率,使得双向模拟在跨域环境中更加高效,降低了客户端到服务器模拟请求的延迟(从 2 次往返时间减少到 1 次),同时减少了 HTTP 请求的总数。

系统兼容性与问题修复

Centrifugo v6.1.0 新增了对 Ubuntu 24.04 Noble Numbat 的 DEB 包支持,同时移除了对已停止维护的 Ubuntu Bionic Beaver 的支持,确保了系统的安全性和稳定性。

在问题修复方面,团队将 rueidis 依赖降级到 v1.0.53 版本,解决了在强制使用 RESP2 协议时可能出现的 AUTH 错误问题,提高了 Redis 连接的可靠性。

总结

Centrifugo v6.1.0 的发布带来了多项重要改进,特别是在 Redis 集群自动检测、TLS 支持、性能优化和跨域通信效率方面。这些改进使得 Centrifugo 在云环境中的部署更加简单,性能更加强大,同时也提升了开发者和最终用户的使用体验。对于正在使用或考虑采用 Centrifugo 作为实时消息解决方案的团队来说,升级到 v6.1.0 版本将能够获得更好的性能和更简便的运维体验。

登录后查看全文
热门项目推荐
相关项目推荐