谁在使用 Bazel

报告问题 查看来源 每晚 · 7.2。 · 7.1敬上 · 7.0 · 6.5 · 6.4

本页面列出了已知会使用 Bazel 的公司和 OSS 项目。 这并不构成对背书的认可。

使用 Bazel 的公司

acqio

Acqio 是一家金融技术公司,为小型企业和 中等规模的商家。Acqio 拥有少量 monorepo,并使用 Bazel, Kubernetes 提供快速可靠的微服务。

Adobe

Adobe 已经发布了 Bazel 规则, GitOps 驱动的持续 Kubernetes 部署。

Asana

Asana 是一款 Web 应用和移动应用,旨在帮助团队跟踪工作情况。 来源网站原文引述:

Bazel 可提升所有构建/测试的可靠性、稳定性和速度 由于缓存不正确,我们不再需要清理。

Ascend.io

Ascend 是一家位于帕洛阿尔托的初创公司,为大型数据集提供解决方案 分析。他们的座右铭是大数据很难,我们化繁为简

Beeswax

Beeswax 是一家位于纽约的初创公司,提供实时出价服务, 服务。Bazel 为他们基于 Jenkins 的持续集成和部署提供支持 框架。Beeswax 非常喜欢 Bazel,因为 Bazel 速度快、准确、出色 支持多种语言和平台

Braintree

Braintree 是 PayPal 的子公司, 应用。他们使用 Bazel 进行内部构建的部分工作,Paul Gross 也 甚至发布了一个 关于改用 Bazel 的成功文档

Canva

Canva 利用 Bazel 管理其庞大的多语言代码库,其中包括 Java、TypeScript、Scala、Python 等。迁移到 Bazel 显著提高开发者和计算基础架构的效率,例如 5-6 倍 CI 构建时间平均缩短,并且 CI 将继续成为基础 实现快速、可重现的标准化软件构建。

CarGurus

CarGurus 的使命是打造全球最可信、最透明 汽车交易市场并使用 Bazel 构建其多语言 monorepo。

罗盘

Compass 是一个技术驱动的房地产平台。配备一支由真人精英组成的团队 房地产、技术和商业专业人士是我们的宗旨, 为寻找房客量身打造的可靠信息来源

Databricks

Databricks 提供基于 Apache SparkTM 的云端集成工作区。

Databricks 代码库是一个 Monorepo,其中包含为 我们的大部分服务,JavaScript 用于前端界面,Python 用于脚本编写, Jsonnet 来配置我们的基础设施,等等 [...] 尽管我们的 monorepo 包含 100 万行 Scala,其中的代码处理速度非常快 简洁明快 (Databricks 使用 Bazel 快速构建 Scala

Dataform

Dataform 可为数据团队提供可扩缩的分析功能。他们维护着 将 NPM 软件包和文档网站整合到单个 monorepo 中,这一切都由他们完成 调试项目。

迁移到 Bazel 之后 获得了许多好处 包括:

  • CI 速度加快:我们启用了远程构建缓存,将整个代码库的平均构建时间从 30 分钟缩短为 5 分钟。
  • 改进了本地开发:再也不用担心忘记运行的随机 bash 脚本,增量构建时间从几分钟缩短至几秒钟
  • 开发者设置时间:新工程师只需 3 个依赖项(bazel、docker 和 JVM)即可构建所有代码。最后一位加入我们团队的工程师在 <在一台全新的空笔记本电脑上 30 分钟

深银色 FISHLABS

Deep Silver FISHLABS 是一家高端 3D 游戏开发商。他们将 Bazel 与 以 C++/Python/Go/C 为基础构建其内部构建工具,尤其是 制作和部署所有的 3D 资源。

Dropbox

在 Dropbox,Bazel 是我们分布式构建和测试的关键组件 环境我们使用 Bazel 将 TypeScript/Python/Go/C/Rust 整合为可靠的 正式版。

Engel 和民众

Engel 和Völkers AG 是一家德国私营公司,通过一系列 特许经营办事处,提供房地产交易相关服务。

在我们的一个内部项目中,编译时间从 11 月 1 分钟到 1 分钟左右 这是一个相当了不起的成就 我目前正在努力为更多项目引入 Bazel。 (试用 Google Cloud Build 和 Bazel

Etsy

Etsy 是一个电子商务网站,主营手工或复古商品和用品。 以及独特的工厂制造的商品

他们使用 Bazel 构建和测试基于 Java 的搜索平台。Bazel 会生成 这两种软件包分别用于裸机服务器和可重复的 Docker 映像。

Evertz.io

Evertz.io 是一个多租户、无服务器的 SaaS 平台, 为广播媒体行业提供全球有效的多区域服务, 由 Evertz Microsystems 创建。

该网站已通过 Angular 和 Bazel 工作流全面构建和部署 (来源)。

查找

FINDMINE 是面向零售业的自动化技术, 学习如何大规模推行当前繁琐的手动商品挑选流程。 我们使用 Bazel 实现整个 Python 软件包的构建、测试和 部署流程

Flexport

Flexport 是一家技术型全球货运代理公司;我们的使命是 让全球贸易变得更轻松在 Flexport,我们使用 Bazel 来构建/测试 Java/JavaScript 服务和客户端库;以及生成 Java 和 Ruby protobuf 定义中的代码。 了解我们如何使用 Bazel 隔离运行单独的 JUnit 5 测试。

Google

Bazel 的设计宗旨是能根据 Google 的需求进行扩缩 可重现性和平台/语言支持方面的要求所有软件 Google 是使用 Bazel 构建的。Google 使用 Bazel 及其规则管理数以百万计的 构建的应用。

GRAKN.AI

GRAKN AI 徽标

Grakn 是一种数据库技术,可作为 智能系统Grakn 让智能系统能够解读复杂的 作为可进行逻辑推理的单个知识正文。 Bazel 让 @graknlabs 团队能够构建高度编排的 CI, 分发流水线,该流水线可管理多个存储库。 并且可以无缝部署到众多平台

华为

华为技术在大约 30 个项目中使用 Bazel,它们是 Java/Scala/Go (Go 项目除外),其他项目最初是由 Maven 构建的。周三 编写一个简单的工具,将 Maven 构建的项目转换为 Bazel 构建的项目。 近期,会有越来越多的项目使用 Bazel。

IMC 交易

IMC 是一家全球自营交易公司和做市商,总部位于 阿姆斯特丹。我们使用 Bazel 持续构建和测试我们的 Java/C++/Python/SystemVerilog 项目。

Improbable.io

Improbable.io 开发了 SpatialOS, 创造包含数百万复杂实体的大型模拟。

Interaxon

InteraXon 是一家思想控制型计算公司,生产硬件和 能够将脑波转化为数字信号的软件平台。

木星

Jupiter 是一家提供杂货配送服务和家居用品的公司 必备应用。

他们在后端代码中使用 Bazel,尤其是为了编译 proto 和 Kotlin JVM 二进制文件,支持使用远程缓存。 (来源

只需要

Just 是一家总部位于挪威的企业金融技术公司 打造软件解决方案,改变全球企业财务主管的管理方式 风险和流动性他们的整个应用堆栈都是使用 Bazel 构建的。

Kitty Hawk Corporation

Kitty Hawk Corporation 是一家美国飞机制造商 电动飞机他们将 Bazel 与 Haskell 和 Scala 规则搭配使用。

Line

Line 提供了一款即时通信应用,该应用最受欢迎的 。 他们在代码库(大约 60% Swift 和 40%)中使用 Bazel C/C++/Objective-C/Objective-C++ (来源)。

改用 Bazel 后, 构建时间。这大幅缩短了周转时间 测试期间向测试人员分发新 build 不再意味着 还需要一个小时等待构建和测试 (使用 Bazel 提升 LINE for iOS 的构建性能

LingoChamp

LingoChamp 为英语学习者提供专业的解决方案。我们使用 Bazel 使用 Java 和 Python 项目

LinkedIn

LinkedIn 是 Microsoft 的子公司,是全球最大的职业社交平台 。LinkedIn 使用 Bazel 来构建自己的 iOS 应用。

Lucid 软件

Lucid Software 是视觉协作领域的领头羊,可帮助团队查看和构建 将未来从创意变成现实旗下产品 LucidchartLucidsparkLucidscale - 团队 可以围绕共同愿景保持一致,阐明复杂性,并进行视觉协作, 无论用户身在何处

Lucid 使用 Bazel 构建了数百万行 Scala 和 TypeScript。 迁移到 Bazel 大大加快了构建速度,减少了外部 构建环境依赖项,并简化开发者体验 与构建系统配合使用Bazel 帮助 Lucid 提高了开发者的工作效率, 从而实现了进一步增长。

Lyft

Lyft 将 Bazel 用于其 iOS(来源)和 Android 应用。

马卡尼语

Makani 现已成为 Google 的子公司,负责开发能源风筝并使用 Bazel 打造 软件(包括嵌入式 C++ 软件)。

聚会

Meetup 是为线下群组提供便利的在线社交网络门户 会议。 Meetup 工程团队为 rules_scalarules_avro 的维护者 和 rules_openapi

Nvidia

Nvidia 一直使用 dazel(docker bazel) for python 解决 其他的都是普通的贝果 (主要是 Go / Scala/ C++/ Cuda) (来源

Peloton 技术

Peloton Technology 是一家自动化汽车技术公司,主营卡车业务 事故和燃料使用他们使用 Bazel 为汽车应用实现可靠的构建 安全系统

Pinterest

Pinterest 汇集了全世界的创意灵感。他们使用 Bazel 构建各种 后端服务 (Java/C++) 和 iOS 应用 (Objective-C/C++)。

我们发现 Bazel 最适合我们的目标, 将效果提升一个数量级,消除了 构建环境并逐步采用。因此,我们现在 使用 Bazel 构建 iOS 版本 快速发展且Pinterest 发布可靠 iOS build

PubRef

PubRef 是一个新兴的科学出版平台。他们将 Bazel 与 rules_closure 以构建 frontend,构建主后端的原生 Java 规则, rules_go, rules_noderules_kotlin 用于构建各类 后端服务rules_protobuf 是 用于协助后端服务之间基于 gRPC 的通信。 PubRef.org 位于科罗拉多州博尔德。

Redfin

Redfin 是一家新一代房地产经纪公司,提供全方位的本地服务 。他们使用 Bazel 构建和部署网站及各种后端 服务。

由于转化主要发生在我们之后,因此效果有了很大的改善!我们的 CI 构建速度更快(大幅提升:过去需要 40-90 分钟,现在开发 (平均 5-6 分钟)构建完成。而且可靠性也要高得多。这点较难 但从不明原因的构建失败转变为 “刚发生的事情”被视作有待解决的真正问题,这使我们 持续提升的良性循环。 (我们从 Maven 改为使用 Bazel,构建速度提高了 10 倍

仪式感

Ritual 是一款移动取餐应用,可为餐馆和顾客建立联系提供便利 一款简单、省时的工具,可让您获得想要的食品和饮料,而无需 等等。Ritual 将 Bazel 用于其后端服务。

贴靠

Snapchat 即时通讯应用的开发者 Snap 已从 Buck 迁移至 Bazel (来源)。有关 流程的详细信息,请参阅他们的工程博客

Stripe

Stripe 提供移动付款解决方案。他们是 Bazel Scala 规则

Tinder

Tinder 将其 iOS 应用从 CocoaPods 迁移到 Bazel (来源)。

廷克

Tink 是一家欧洲金融技术公司,致力于打造连接各地银行的最佳方式 欧洲。

他们使用 Bazel 通过 polyglot monorepo 构建后端服务。 Tink 的工程师正在组织 bazel build //stockholm/... 交流会。

Tokopedia

Tokopedia 是印度尼西亚的一家专注于电子商务的科技公司, 月活跃用户数超过 9000 万, 平台。

这篇文章是由他们撰写的 Tokopedia 如何让 iOS 构建时间缩短 1000%, 他们介绍了 Bazel 如何加快构建速度的。构建时长原为 使用 Bazel 需要 55 到 10 分钟,使用远程 缓存。

Twitter

Twitter 已决定从 Pants 迁移到 Bazel, 构建工具 (来源)。

双西格玛

Two Sigma 是一家总部位于纽约的科技公司,致力于 全球数据的价值。

优步

Uber 是一家叫车公司。拥有 900 名活跃开发者,Uber 的 Go monorepo 很可能是使用 Bazel 的最大 Go 代码库之一。参阅文章 使用 Bazel 构建 Uber 的 Go Monorepo 来详细了解他们的体验。

优步先进技术集团

Uber Advanced Technologies Group 专注于自动驾驶汽车业务, Uber,包括卡车/货运和自动驾驶拼车服务。组织 使用 Bazel 作为主要构建系统。

Vistar Media

Vistar Media 是一个让品牌覆盖消费者的广告平台 根据他们在现实世界中的行为做出选择。他们的工程团队 并且主要在费城使用 Bazel 进行构建、部署和 并整合使用各种语言编写的代码库 不同技术

VMware

VMware 在开发过程中使用 Bazel 来生成确定、可靠的构建 为客户打造创新型产品。

Wix

Wix 是一个基于云的 Web 开发平台。其后端使用 Java 和 Scala 代码。他们将远程执行与 Google Cloud Build 结合使用。

使用 bazel 远程运行时,整洁 build 的速度可提升约 5 倍 此作业会利用 bazel 强大的构建/测试并行处理功能, 它会将构建/测试操作分派给工作器农场。平均构建时间更长 由于使用了 bazel 的激进缓存,运行速度提高了 10 倍以上 机制。 (从 Maven 或 Gradle 迁移到 Bazel?您应该问自己的 5 个关键问题

Zenly

Zenly 是亲友的实时地图,以最有趣的方式相聚 或者只是看看有什么更新!— 这样即使天各一方,也能有归属感。


使用 Bazel 的开源项目

Abseil

Abseil 是一个开源 C++ 代码集合(兼容 C++11), 扩充 C++ 标准库。

Angular

Angular 是一种热门的 Web 框架。 Angular 是使用 Bazel 构建的。

阿波罗

Apollo 是一种高性能、灵活的架构,可加快 自动驾驶汽车的开发、测试和部署。

brpc

整个百度使用的工业级 RPC 框架, 和数千种服务,称为 “baidu-rpc”内部 IP 地址

cert-manager

cert-manager 是一种 Kubernetes 插件,用于自动管理和颁发 来自各种颁发来源的 TLS 证书。这样可以确保证书 定期更新有效信息,并尝试以 在到期前的适当时间生效。

CallBuilder

Java 代码生成器,可让您通过编写 函数。

CPPItertools

C++ 库,提供受 Python 启发且基于范围的 for 循环插件 内置和迭代工具库的功能。与 itertools 和 Python3 内置函数一样, 库尽可能使用延迟评估。

Copybara

Copybara 是一种在仓库之间转换和移动代码的工具。

Dagger

Dagger 是一个完全静态的编译时依赖项注入框架,适用于 Java 和 Android。

DAML

DAML 是一种智能合同语言,用于构建面向未来的分布式 在注重隐私保护的安全运行时上运行应用。

DeepMind Lab

一个可自定义的 3D 平台,适用于基于代理的 AI 研究。

Drake

Drake 是一个 C++ 工具箱,最初来自麻省理工学院,现由丰田研究院领导 研究所。它包含一系列用于分析机器人动力学的工具 并构建控制系统,重点是 基于优化的设计/分析。

Envoy

C++ L7 代理和通信总线

容易出错

将常见的 Java 错误捕获为编译时错误。(迁移到 Bazel 的 progress.)

Extensible Service Proxy

可扩展服务代理(也称为 ESP)是一种用于启用 API 管理的代理 支持 JSON/REST 或 gRPC API 服务。目前的实现是 基于 NGINX HTTP 反向代理服务器

FFruit

FFruit 是一款免费应用,热门服务的开源 Android 应用 Falling Fruit

Gerrit 代码审核

Gerrit 是一款代码审核和项目管理工具,适用于基于 Git 的项目。

十字架

Gitiles 是面向 Git 代码库的简单代码库浏览器,基于 JGit 构建而成。

Grakn

Grakn (https://grakn.ai/) 是一个知识图谱引擎,用于整理复杂的 并使其可查询。

GRPC

不局限于语言和平台的远程过程调用系统。 (Bazel 是一个受支持的构建系统,但不是主要的构建系统。)

gVisor

gVisor 是一个容器运行时沙盒。

Guetzli

Guetzli 是一种 JPEG 编码器,旨在实现出色的压缩密度和 视觉质量

古拉瓦

Java 代码生成器,可让您编写和使用 Prolog 样式的谓词 无缝衔接。

海恩

Heron 是一个实时、分布式、容错的流处理引擎, Twitter。

爵士乐

Jazzer 是适用于 Java 和其他与 JUnit 5 集成的基于 JVM 的模糊测试工具。

JGit

JGit 是一个轻量级的纯 Java 库,用于实现 Git 版本控制, 系统。

Jsonnet

一种优雅的、正式指定的 JSON 配置生成语言。 (Bazel 是一个受支持的构建系统。)

Kubernetes

Kubernetes 是一个用于管理容器化应用的开源系统 从而提供部署、维护、 应用的扩缩和扩缩。

Kythe

一个生态系统,用于构建可处理代码的工具。

Nomulus

Google App Engine 上的顶级域名注册服务。

ONOS:开放式网络操作系统

ONOS 是唯一支持从 Android 设备 从传统“棕地”网络到 SDN“绿野”网络。这样一来, 令人兴奋的新功能,以及颠覆性的部署和运营成本点 网络运营商

适用于 Java 的 PetitParser

通常,编程语言的语法是以静态方式指定的。 它们难以组合和重复使用,因为其不可避免地会出现模糊性。 PetitParser 将无扫描解析、解析器组合器、 用于解析表达式语法和 packrat 解析器,以建模语法和解析器 用作可动态重新配置的对象。

PlaidML

PlaidML 是一个使深度学习无处不在的框架。

项目 V

Project V 是一套工具,有助于你构建自己的隐私网络, 。

Prysmatic Labs 以太坊 2.0 实现

Prysm 是 Ethereum 2.0 的分片客户端,Ethereum 2.0 是基于区块链的分布式 计算平台

Ray 是一个灵活、高性能的分布式执行框架。

弹性

Resty 是一个适用于 Go 的简单 HTTP 和 REST 客户端库(灵感来自 Ruby) REST-client)。

粗略时效

Roughtime 项目旨在提供安全的时间同步。

Selenium

Selenium 是一个用于测试 Web 应用的可移植框架。

语义

Semantic 是一个 Haskell 库和命令行工具,用于解析、分析和 比较源代码它由 GitHub 开发(用于 代码导航)。

已投放

Served 是一个用于构建高性能 RESTful Web 服务器的 C++ 库。

十四行诗

Sonnet 是一个基于 TensorFlow 构建的库,用于构建复杂的神经网络, 。

雪糕

Sorbet 是 Ruby 子集的快速且强大的类型检查工具。可扩容到 包含数百万行代码的代码库,并且可以逐步采用。

Spotify

Spotify 使用 Bazel 构建 iOS 和 Android 应用(来源)。

廷克

Tink 是一个多语言、跨平台的开源库, 安全、易于使用、 滥用行为。

TensorFlow

面向机器智能的开源软件库。

Turbo Santa

独立于平台的 GameBoy 模拟器。

Wycheproof

Project Wycheproof 针对已知攻击测试加密库。

XIOSim

XIOSim 是一款适用于 x86 的详细用户模式微架构模拟器 架构。

ZhihuDailyPurify

ZhihuDailyPurify 是中国版知乎日报 (Zhihu Daily) 的轻量版 问答网络。