加载价格数据中...
HyperBEAM

HyperBEAM Edge 分支近两周更新报告

2025-08-11
HyperBEAM Edge 分支近两周更新报告
我们对过去两周 HyperBEAM 代码仓库的 edge 分支作了跟踪,为什么要选择 edge 分支呢?那是因为这个分支应该是下个 Beta2 版本推出之前的合并分支。故对该分支的跟踪能够让我们窥探 HyperBEAM 的最新成果。
截至目前,该分支在过去的两周内,总提交约 100+ commits,涉及 84 个文件,新增 7881 行代码,删除 1236 行代码。

一、主要功能更新

1. 认证和安全功能增强 🔐

新增设备模块
  • dev_auth_hook.erl (703 行): 新的认证钩子设备,支持请求级别的认证处理
  • dev_codec_cookie.erl (473 行): Cookie 认证编解码器
  • dev_codec_cookie_auth.erl (252 行): Cookie 认证辅助模块
  • dev_codec_http_auth.erl (175 行): HTTP 认证设备
  • dev_secret.erl (1147 行): 密钥管理设备,支持安全存储和访问控制
关键更新
  • 支持 HMAC-SHA256 签名验证
  • 实现了基于 Cookie 的会话管理
  • 增强了 HTTP 签名验证机制
  • 添加了请求级别的认证钩子

2. 存储系统改进 💾

存储访问控制
  • 新增 hb_store_opts.erl (262 行): 存储选项管理模块
  • 实现了存储级别的访问控制机制
  • 支持隔离的调度器存储
  • 增加了存储压力测试
关键变更
  • 消息存储策略调整(从 signed ID 改回 unsigned ID)
  • LMDB 存储优化和重构
  • 改进了存储缓存机制

3. 进程和计算优化 ⚡

快照功能增强
  • 支持进程计算完成后自动创建快照
  • 新增委托计算的快照支持
  • 支持基于时间和 slot 的快照策略
计算模式改进
  • 新增 compute=100 内联参数支持
  • 优化了进程执行流程
  • 改进了调度器缓存机制

4. 配置系统增强 ⚙️

配置文件支持
  • 支持通过文件扩展名自动识别配置格式(JSON、YAML 等)
  • 新增 test/config.json 测试配置文件
  • 标准化了配置键名(如 router_opts

5. 路由和路径处理改进 🛣️

路径语法增强
  • 支持双引号路径:"/path with spaces/"
  • 支持默认键语法:/part=val/ 解析为 {path: part, part: val}
  • 修复了以 ^ 开头的正则表达式匹配

二、Bug 修复

关键修复

  1. 认证转发修复: 修复了 auth-hook@1.0 请求执行时的消息转发问题
  1. 路由选项修复: 修复了路由特定选项的类型模拟问题
  1. 正则匹配修复: 修复了以 ^ 符号开头的路径正则表达式支持
  1. ELMDB 修复: 防止在未找到时的 panic
  1. 调度器缓存修复: 确保消息首先使用标准存储加载
  1. 单例构建修复: 修复了 hb_singletondo_build 函数

三、性能优化

  1. 存储性能
    1. LMDB 存储实现简化和优化
    2. 同步 API 改进
    3. 缓存机制优化
  1. 日志优化
    1. 清理了过长的日志输出
    2. 改进了错误日志格式
    3. 增强了调试信息的可读性
  1. 进程管理
    1. 每次计算请求完成后强制快照
    2. 支持周期性检查点
    3. 优化了进程缓存策略

四、新增测试

  • Cookie 认证测试向量(764 行)
  • 存储访问控制测试
  • 调度器存储压力测试
  • Lua 测试改进

五、开发者体验改进

  1. 调试功能
    1. 增强的事件分析器
    2. 改进的追踪日志
    3. 更好的错误信息展示
  1. UI 改进
    1. HyperBuddy 仪表板增强
    2. 新增控制台控制功能
    3. 样式更新(42 行 CSS)

六、重要回滚

  • 消息存储策略回滚: 撤销了"主要通过签名 ID 存储消息"的临时更改(PR #412)

七、贡献者

主要贡献者:
  • Sam Williams(大部分提交)
  • Ayush Agrawal(测试和配置改进)
  • Tom Wilson(ELMDB 修复)
  • Dhia Gharsallaoui(边缘案例修复)

八、部署建议

低风险更新 ✅

  • 配置文件格式支持
  • 路径处理改进
  • Bug 修复

中等风险更新 ⚠️

  • 存储访问控制(需要测试权限配置)
  • 快照策略变更(可能影响性能)

需要关注的更新 ⚡

  • 认证系统变更(新的认证机制需要配置)
  • 消息存储策略调整(虽然已回滚,但需要验证)