Hacker News 中文摘要

RSS订阅

黑天应用视图 -- Blacksky AppView

文章摘要

Blacksky团队基于bluesky的atproto项目进行了优化分支,主要改进包括AppView性能优化、缓存机制增强及社区功能扩展。该项目托管在GitHub上,旨在提升社交协议的性能和用户体验。

文章总结

Blacksky 的 AT Protocol 实现分叉

项目概述

Blacksky 社区维护了一个 Bluesky AT Protocol 参考实现的分叉版本,位于 GitHub 仓库 blacksky-algorithms/atproto。该项目主要针对 AppView 进行了性能优化,增加了缓存机制和社区功能,为 api.blacksky.community 提供支持。

核心差异

技术架构改进

  • 用 Rust 编写的 rsky-wintermute 替代了原生的 TypeScript 事件消费器,实现了:
    • 并行队列处理(支持 10,000+ 条记录/秒)
    • 独立的实时索引与回填队列
    • 配套运维工具(账户定向索引、标签流重放等)

性能优化

  1. 数据库查询

    • 在 feeds.ts 中使用 LATERAL JOIN 优化时间线查询
    • 强制按用户索引使用,避免全表扫描
  2. 缓存层

    • Redis 缓存配置(Actor 资料60秒、记录5分钟、互动计数30秒)
    • 已知问题:Actor 缓存存在 protobuf 时间戳序列化问题(当前建议禁用)
  3. 其他改进

    • 通知偏好服务端强制实施
    • JWT 验证时绕过缓存直接查询 PLC 目录
    • 记录存储前进行 JSON 消毒(移除空字节)

社区功能

  • 专属 lexicon 命名空间 community.blacksky.feed.*
  • 独立的 community_post 数据表
  • 数据平面和 API 层的成员权限控制
  • 与标准帖子线程的整合显示

系统架构

mermaid graph TD Bluesky中继-->rsky-wintermute rsky-wintermute-->PostgreSQL PostgreSQL-->bsky-dataplane bsky-dataplane-->bsky-appview bsky-appview-->反向代理 PostgreSQL-->Palomar(搜索服务) Palomar-->OpenSearch

核心组件包括: - rsky 系列工具:事件索引、中继、视频处理 - 数据平面:基于 gRPC 的 PostgreSQL 接口 - Palomar:集成 OpenSearch 的全文搜索

部署要求

硬件配置(全网络规模)

| 资源 | 最低 | 推荐 | |------|------|------| | CPU | 16核 | 48+核 | | 内存 | 64GB | 256GB | | 存储 | 10TB NVMe | 28TB+ RAID | | 网络 | 100Mbps | 1Gbps+ |

数据规模示例

  • 帖子记录:~3.5TB
  • 点赞数据:~2TB
  • 通知数据:~600GB
  • 搜索索引:~500GB

运营经验

项目文档详细记录了在构建全网络 AppView 过程中解决的关键问题,包括: - PostgreSQL JSON 数据损坏 - 空字节导致的解析失败 - 通知表膨胀(曾达663GB) - 标签处理顺序问题 - 账户迁移时的签名密钥轮换

许可证

与上游项目保持一致,采用 MIT 和 Apache 2.0 双许可证。

注:该项目目前不接受外部贡献,建议需要标准实现的用户参考官方 bluesky-social/atproto 仓库。

评论总结

总结:

  1. 对Bluesky去中心化的质疑
  • 认为Bluesky的去中心化是"笑话",ActivityPub协议更优 "The 'decentralization' of Bluesky is a joke. Despite its faults ActivityPub is superior."
  1. Blacksky的定位与价值
  • 为美国黑人社区提供专属服务,具有自主管理权但保持互操作性 "the purpose of Blacksky is to provide a service for the (US) black community which has its own moderation decisions while being substantially interoperable"
  • 用户选择社交网络主要基于社交需求而非技术因素 "the reasons people use one social network rather than another are almost always social first and technical second"
  1. Blacksky的发展成就
  • 零成本实现数百万用户增长 "Blacksky grew to millions of users without spending a dollar"
  1. 关于隔离的质疑
  • 直接质疑是否属于自我隔离 "Is this self imposed segregation?"
  1. 运营成本争议
  • 有证据显示运营中继服务器月成本可低至18-34美元 "others have done for as low as $34/month...actually the article links to somebody doing it for $18/month"
  • 质疑声称高成本者可能故意误导 "those posters are either wrong and trying to mislead us on purpose"