Encore项目v1.46.0版本发布:存储对象签名URL与本地仪表盘增强
项目简介
Encore是一个现代化的后端开发框架,它通过抽象基础设施的复杂性,让开发者能够专注于业务逻辑的实现。Encore提供了自动化的API生成、数据库管理、分布式追踪等功能,极大地简化了云原生应用的开发流程。
存储对象签名URL功能
在v1.46.0版本中,Encore引入了一项备受期待的功能——存储对象签名URL。这项功能为开发者提供了更灵活、更安全的文件传输方案。
签名上传URL
开发者现在可以生成有时效性的签名URL,允许客户端直接上传文件到对象存储,而无需经过后端服务中转。这不仅减轻了API服务的负载,还利用了云存储服务的高效传输能力。
// 生成一个有效期为2小时的签名上传URL
const uploadUrl = await profilePictures.signedUploadUrl("user-id", {ttl: 7200})
客户端可以使用这个URL直接上传文件,例如通过curl命令:
curl -X PUT --data-binary @local-file.jpg "https://storage.googleapis.com/bucket-name/object-id?signature=..."
签名下载URL
对于私有存储桶中的对象,现在也可以生成签名下载URL,允许特定客户端在有限时间内访问这些资源。这在需要临时分享私有文件的场景下特别有用。
本地开发仪表盘增强
v1.46.0版本显著改进了本地开发体验,新增了基础设施仪表盘功能。
基础设施可视化
开发者现在可以在本地开发环境中直观地查看所有运行中的基础设施组件。这包括数据库实例、消息队列、定时任务等,帮助开发者快速验证本地环境的配置是否正确。
定时任务管理
新版本特别强化了对Cron Jobs的支持,开发者可以直接从仪表盘界面手动触发定时任务,大大简化了开发和测试流程。
追踪查看器改进
Encore的分布式追踪系统也获得了重要更新,新增了事件详情展示功能。
事件详情面板
在复杂的调用链路追踪中,开发者现在可以点击时间线上的任意事件,查看该事件的详细信息。这个改进使得分析包含多个事件的复杂调用链变得更加容易。
技术实现细节
-
签名URL安全性:Encore使用HMAC-SHA256算法生成签名,确保URL不能被篡改。每个签名包含过期时间、操作权限和资源路径等信息。
-
本地基础设施模拟:Encore的本地运行时环境现在完整模拟了云环境中的基础设施组件,包括它们的元数据和状态信息。
-
追踪事件优化:追踪系统现在会记录更详细的事件元数据,并在UI中智能分组相关事件,提高可读性。
升级建议
对于现有项目,建议通过以下命令升级Encore工具链:
encore version update
新功能特别是签名URL功能,需要更新相关SDK才能使用。建议开发者在升级后检查是否有API变更影响现有代码。
未来展望
根据Encore团队的规划,未来版本将继续增强本地开发仪表盘的功能,特别是数据库管理方面的工具。社区用户可以通过官方渠道提出功能建议,共同参与框架的演进。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust099- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00