Meta(旧Facebook)が大規模向けのビルドシステム「Buck2」をオープンソースで公開。高速かつ高信頼で拡張可能なビルドシステム

今回は「Meta(旧Facebook)が大規模向けのビルドシステム「Buck2」をオープンソースで公開。高速かつ高信頼で拡張可能なビルドシステム」についてご紹介します。

関連ワード (前身、既存、最初等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Meta(旧Facebook)は、大規模システム向けのビルドシステム「Buck2」をオープンソースで公開したことを明らかにしました。

fig

Buck2は同社内で数千人のエンジニアに使われており、1日あたり数百万回のビルドを実行していると説明されています。

Rustで開発したことによりビルドの速度が約2倍に

Metaは2013年にBuck2の前身となるビルドシステムの「Buck」をオープンソースで公開しています。BuckはJavaで開発されています。

Buck2は、新規にRust言語で開発されたことでガベージコレクションによる処理の一時停止などが避けられたため、より高速なビルドの実行が可能になっています。Meta社内ではBuckと比較して約2倍高速になったとのことです(ただしJavaは優れたメモリプロファイリングツールなどの優位点があると、フォローもしています)。

また、Buckではリモートでのビルド実行があとから機能追加されたのに対し、Buck2ではリモートでのビルドを最初から考慮して開発されたことで、より並列性の高い効率的なビルドが可能になっています。

Buck2のビルドシステムのコア機能は特定のプログラミング固有のビルドルールから完全に分離されており、プログラミング言語固有のルールなどは「Starlark」と呼ばれるコンフィグレーションのための言語によって記述します。これにより、さまざまな言語に対応できる拡張性も備えているとされています。

さらにビルド時の依存関係はつねに明示が必要で、それにより厳密で信頼性の高いビルドの実行を可能にしているとのことです。

Metaの開発事情がBuckを生んだ

MetaはBuckおよびBuck2を自社開発する理由として、同社がC++やPython、 Rust、Kotlin、Swift、Objective-C、Haskell、OCamなどをはじめとするさまざまなプログラミング言語によるコードを単一のリポジトリ(monorepo)で扱っており、同社のような大規模かつ多言語のビルドは既存のビルドシステムでは扱えないことから、自社でこれらの最適化されたビルドシステムを開発することにしたと説明しています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
データ管理がランサムウェアの脅威に有効な対策となる理由
IT関連
2022-05-31 04:24
コピペ専用キーボード「The Key」がアップデート–RGB LED内蔵でホットスワップ対応
IT関連
2022-05-08 03:13
朝日生命、コールセンターに「bellFace」を試験導入–社内の要望受け
IT関連
2022-06-04 00:58
リコー、裸眼で全方位から見られる立体映像装置を開発 22年度の実用化目指す
DX
2021-03-09 17:33
GitHub、リポジトリールールを一般提供
IT関連
2023-07-26 17:52
東急不動産やNTTら3社、IOWNサービスを活用し渋谷を環境先進都市のモデルケースへ
IT関連
2023-06-09 03:44
医療用IoTデバイス–サイバー攻撃者の次なる標的
IT関連
2023-04-27 14:39
NFTアートが約1300万円で落札 世界的VRアーティストのせきぐちあいみさんに、“VR一点もの”オークションに挑戦した経緯を聞いた
イラスト・デザイン
2021-03-26 14:39
SBG孫社長、失踪報道のジャック・マー氏とは「個人的な趣味の話をしている」
企業・業界動向
2021-02-09 07:24
姿を消したランサムウェア集団 被害企業が苦境、裏社会で裁判沙汰も :この頃、セキュリティ界隈で(1/2 ページ)
セキュリティ
2021-07-20 23:15
SCSK、グループ技術戦略「技術ビジョン2030」策定–「共創ITカンパニー」目指す
IT関連
2024-07-21 01:40
三菱UFJ銀行やNTTデータら、法人ビジネスプラットフォームを取り扱い開始
IT関連
2022-06-29 16:03
倉庫テックの導入で現場従業員の8割以上が士気向上–ゼブラ調査
IT関連
2023-12-22 10:22
JR東日本、信号システムのDX推進で輸送安定性と業務革新を目指す
IT関連
2024-02-09 19:23