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

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

2025-06-07 12:45:57作者:秋泉律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 版本将能够获得更好的性能和更简便的运维体验。

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

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
466
3.47 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
715
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
203
82
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1