Synapse 1.130.0rc1版本发布:增强任务管理与用户目录功能
Synapse作为Matrix协议的参考实现服务器,近期发布了1.130.0rc1版本。这个版本在任务管理、用户目录搜索和推送通知等方面进行了多项改进,同时修复了一些长期存在的问题。本文将详细介绍这个版本的主要更新内容和技术亮点。
核心功能增强
新增计划任务管理API
该版本引入了一个全新的管理API端点GET /_synapse/admin/v1/scheduled_tasks,允许管理员查看当前服务器上的计划任务情况。这个功能为服务器运维提供了更细粒度的任务监控能力,管理员可以清晰地了解后台任务的执行状态和调度情况。
用户目录搜索优化
通过新增的user_directory.exclude_remote_users配置选项,服务器管理员现在可以选择性地将远程用户排除在用户目录搜索结果之外。这个功能特别适合那些希望优先展示本地用户的大型实例,或者需要控制搜索结果范围的私有部署场景。
设备管理支持
1.130.0rc1版本扩展了对GET /devices/端点的支持,现在可以在工作节点(worker)上处理这个请求。这一改进使得在分布式部署环境中,设备管理相关的请求可以得到更均衡的负载分配。
问题修复与性能优化
推送通知机制改进
修复了一个长期存在的推送通知问题:当推送端点失败时,服务器会立即重试而忽略退避计时器。新版本中,服务器会正确遵循退避机制,避免在推送服务不可用时产生过多的重试请求,从而减少不必要的网络流量和服务器负载。
滑动同步优化
在处理远程邀请拒绝时,新版本确保相关的离开事件能够正确传递到滑动同步(Sliding Sync)系统。这一改进提高了同步机制的可靠性,确保客户端能够及时获取最新的房间状态变化。
容器化部署改进
Docker镜像在这个版本中获得了多项优化:
- 工作节点配置脚本现在使用更可靠的Python路径处理方式,确保在不同环境中都能正确执行
- 工作节点镜像的构建过程进行了优化,减少了构建时间和镜像体积
- 容器启动脚本中的外部程序调用被替换为shell内置命令,提高了执行效率
- 生成的容器脚本模板不再包含前导换行符,确保shebang能够被正确解析
安全与认证改进
新版本在认证方面做了多项改进:
- 当使用Matrix认证服务(MAS)时,不再自动配置缺失的用户和设备,这需要配合MAS 0.13.0或更高版本使用
- 对于OIDC ID令牌中的
at_hash字段,现在只在确实使用OIDC访问令牌时才进行验证 - 为URL预览下载的媒体内容应用了文件哈希检查和现有的隔离机制,提高了安全性
性能优化
1.130.0rc1版本包含多项性能改进:
- 通知器(notifier)组件进行了微优化,提高了事件通知的效率
- 速率限制器的实现进行了调整,获得了轻微的性能提升
- 管理员API中的房间相关端点现在可以在工作节点上运行,提高了API的可扩展性
开发与测试改进
测试框架也获得了一些增强:
- 修复了使用authlib 1.5.2时的测试失败问题
- 重构了滑动同步房间列表测试,确保同时覆盖新逻辑和回退逻辑路径
- 为管理员API添加了更全面的文档说明
这个版本还更新了多个依赖项,包括actions/add-to-project、pydantic、pyopenssl等,确保使用最新的安全补丁和功能改进。
总体而言,Synapse 1.130.0rc1版本在功能完善性、性能优化和安全性方面都做出了有价值的改进,为Matrix生态系统提供了更稳定可靠的基础设施支持。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0131
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00