Meta 创始人 Mark Zuckerberg 昨天在 Threads 上宣布,周三正式上线的 Threads 注册量已突破三千万。 Threads 是一个基本文本的社交应用,由 Instagram 团队开发。虽然它在功能上还无法真正取代 Twitter,但目前看来事实上已是 Twitter 的替代方案。 上文提到,Threads 由 Instagram 团队打造,因此这款新产品并没有采用 Facebook 用得出神入化的 PHP 作为后端开发语言。
防杠备注:Facebook 的技术栈不仅仅是 PHP,他们还自研了许多黑科技,比如 Hack Lang、HHVM 根据 CPython 核心开发者 Łukasz Langa 透露的消息,Threads 后端采用 Python 3.10 进行构建 ——Meta 基于 CPython 3.10 构建了内部自用的高性能分支 Cinder。
Cinder 的介绍显示,它为 Instagram 提供后端支持,并在 Meta 中越来越多的 Python 应用程序中使用。 此外,Cinder 针对性能优化自研了许多新特性,包括 JIT、延迟加载模块、预编译静态模块、字节码内联缓存、协程的即时评估,以及实验性字节码编译器。该编译器使用类型注释来生成在 JIT 中性能更好的类型专用字节码。 根据 Threads 工程师的介绍,Threads 和 Instagram 一样采用 Django 作为 Web 服务器,所有性能密集型的任务都放到了各种 C++ 聚合器和推荐类型服务中。 当然,他们在 Django 基础进行了深度的定制修改,因此支持在自定义的 Python JIT 上运行,并使用 Facebook 开发的数据库(同样用于 IG 和 FB)。 这名工程师表示,2019 年刚加入 Instagram 时,他们在生产环境运行的还是原生 Python。现在已经用上了自定义 JIT——虽然还比较新。 他还说道,这是 Facebook 一直以来的做法——打造新产品时会让其界面与现有的大致相似,然后根据需求来逐渐替换后端模块,而不是进行大规模重写。 毕竟对于这类大型社交应用程序来说,与数据库性能相比,Web 服务器使用的编程语言显得并没有那么重要。
Hot