ใครกำลังใช้ Bazel

รายงานปัญหา ดูแหล่งที่มา รุ่น Nightly · 7.4 7.3 · 7.2 · 7.1 · 7.0 · 6.5

หน้านี้จะแสดงรายชื่อบริษัทและโปรเจ็กต์ OSS ที่ทราบว่าใช้ Bazel ซึ่งจะไม่ถือเป็นการรับรอง

บริษัทที่ใช้ Bazel

acqio

Acqio เป็นบริษัท FinTech ที่ให้บริการผลิตภัณฑ์และบริการการชำระเงินสำหรับผู้ขายรายเล็กและรายกลาง Acqio มี Monorepo เพียงไม่กี่รายการและใช้ Bazel ร่วมกับ Kubernetes เพื่อให้บริการ Microservice ที่รวดเร็วและเชื่อถือได้

Adobe

Adobe ได้เปิดตัวกฎ Bazel สําหรับการติดตั้งใช้งาน Kubernetes แบบต่อเนื่องที่ขับเคลื่อนโดย GitOps

Asana

Asana เป็นเว็บแอปพลิเคชันและแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ที่ออกแบบมาเพื่อช่วยทีมติดตามงาน ข้อความจากทางทีม

Bazel เพิ่มความน่าเชื่อถือ ความเสถียร และความเร็วให้กับบิลด์/การทดสอบทั้งหมดที่ Asana เราไม่จำเป็นต้องล้างแคชที่ไม่ถูกต้องอีกต่อไป

Ascend.io

Ascend เป็นสตาร์ทอัพใน Palo Alto ที่ให้บริการโซลูชันสําหรับการวิเคราะห์ชุดข้อมูลขนาดใหญ่ คําขวัญของทีมนี้คือ Big Data เป็นเรื่องยาก เราทำให้ทุกอย่างง่าย

ASML

ASML เป็นผู้นำด้านนวัตกรรมในอุตสาหกรรมเซมิคอนดักเตอร์ เราจัดหาทุกอย่างที่ผู้ผลิตชิปต้องการ ไม่ว่าจะเป็นฮาร์ดแวร์ ซอฟต์แวร์ และบริการ เพื่อผลิตลวดลายบนซิลิคอนจำนวนมากผ่านกระบวนการพิมพ์หิน

Beeswax

Beeswax เป็นสตาร์ทอัพในนิวยอร์กที่ให้บริการการเสนอราคาแบบเรียลไทม์ Bazel ขับเคลื่อนเฟรมเวิร์กการรวมและการนำส่งอย่างต่อเนื่องซึ่งอิงตาม Jenkins Beeswax ชื่นชอบ Bazel เนื่องจากทำงานได้เร็วมาก ถูกต้อง และรองรับหลายภาษาและแพลตฟอร์ม

Braintree

Braintree ซึ่งเป็นบริษัทในเครือของ PayPal พัฒนาโซลูชันการชำระเงินสำหรับเว็บไซต์และแอปพลิเคชัน โดยใช้ Bazel สำหรับบิลด์ภายในบางส่วน และ Paul Gross ยังได้โพสต์บทความดีๆ เกี่ยวกับการเปลี่ยนไปใช้ Bazel

Canva

Canva ใช้ประโยชน์จาก Bazel เพื่อจัดการโค้ดเบสขนาดใหญ่ที่ใช้หลายภาษา ซึ่งรวมถึง Java, TypeScript, Scala, Python และอื่นๆ การย้ายข้อมูลไปยัง Bazel ช่วยเพิ่มประสิทธิภาพให้กับนักพัฒนาซอฟต์แวร์และโครงสร้างพื้นฐานการประมวลผลได้อย่างมาก เช่น เวลาในการบิลด์ CI ลดลง 5-6 เท่า และยังคงเป็นรากฐานของการสร้างซอฟต์แวร์ที่รวดเร็ว ซ้ำได้ และเป็นไปตามมาตรฐานของบริษัท

CarGurus

CarGurus มีพันธกิจในการสร้างแพลตฟอร์มตลาดยานยนต์ที่เชื่อถือได้และโปร่งใสที่สุดในโลก และใช้ Bazel เพื่อสร้าง Monorepo แบบหลายภาษา

เข็มทิศ

Compass เป็นแพลตฟอร์มอสังหาริมทรัพย์ที่ขับเคลื่อนโดยเทคโนโลยี เรามีทีมผู้เชี่ยวชาญด้านอสังหาริมทรัพย์ เทคโนโลยี และธุรกิจชั้นยอด เราจึงมุ่งมั่นที่จะเป็นแหล่งข้อมูลที่ดีที่สุดและน่าเชื่อถือที่สุดสำหรับผู้ที่กำลังมองหาบ้าน

Databricks

Databricks มีเวิร์กスペースแบบรวมที่ทำงานบนระบบคลาวด์ซึ่งอิงตาม Apache Spark™

โค้ดฐานของ Databricks เป็น Monorepo ที่มีโค้ด Scala ที่ขับเคลื่อนบริการส่วนใหญ่ของเรา, JavaScript สําหรับ UI หน้าเว็บ, Python สําหรับสคริปต์, Jsonnet สําหรับกําหนดค่าโครงสร้างพื้นฐาน และอื่นๆ อีกมากมาย [...] แม้ว่า Monorepo ของเราจะมี Scala อยู่หลายล้านบรรทัด แต่การทํางานกับโค้ดภายในนั้นรวดเร็วและฉับไว (การบิลด์ Scala ที่รวดเร็วด้วย Bazel ที่ Databricks)

Dataform

Dataform มีข้อมูลวิเคราะห์ที่ปรับขนาดได้สําหรับทีมข้อมูล พวกเขาดูแลแพ็กเกจ NPM เพียงไม่กี่รายการและเว็บไซต์เอกสารประกอบในโมโนรีโปเดียว และทําทุกอย่างด้วย Bazel

หลังจากย้ายข้อมูลไปยัง Bazel แล้ว ทีมได้รับประโยชน์มากมาย ซึ่งรวมถึง

  • CI ที่เร็วขึ้น: เราเปิดใช้การแคชบิลด์ระยะไกล ซึ่งช่วยลดเวลาสร้างโดยเฉลี่ยจาก 30 นาทีเหลือ 5 นาที (สำหรับทั้งพื้นที่เก็บข้อมูล)
  • การปรับปรุงการพัฒนาในเครื่อง: ไม่มีสคริปต์ Bash แบบสุ่มที่คุณลืมเรียกใช้อีกต่อไป บิลด์ที่เพิ่มขึ้นจะใช้เวลาเพียงไม่กี่วินาทีแทนที่จะเป็นนาที
  • เวลาในการตั้งค่าของนักพัฒนาซอฟต์แวร์: วิศวกรใหม่สามารถสร้างโค้ดทั้งหมดของเราได้โดยใช้ Dependency เพียง 3 อย่าง ได้แก่ bazel, docker และ JVM วิศวกรคนล่าสุดที่เข้าร่วมทีมของเราสามารถสร้างโค้ดทั้งหมดได้ภายในเวลาไม่ถึง 30 นาทีบนแล็ปท็อปใหม่เอี่ยมที่ว่างเปล่า

Deep Silver FISHLABS

Deep Silver FISHLABS เป็นนักพัฒนาเกม 3 มิติระดับสูง โดยใช้ Bazel กับ C++/Python/Go/C เป็นพื้นฐานสำหรับเครื่องมือบิลด์ภายใน และโดยเฉพาะสำหรับการคอมไพล์และทำให้ใช้งานได้จริงสำหรับชิ้นงาน 3 มิติทั้งหมด

Dropbox

ที่ Dropbox นั้น Bazel เป็นองค์ประกอบหลักของสภาพแวดล้อมการทดสอบและการสร้างแบบกระจายของเรา เราใช้ Bazel เพื่อรวม TypeScript/Python/Go/C/Rust เข้าด้วยกันเป็นรุ่นที่ใช้งานจริงที่เชื่อถือได้

Engel & Völkers

Engel & Völkers AG เป็นบริษัทเอกชนสัญชาติเยอรมันที่ให้บริการเกี่ยวกับธุรกรรมอสังหาริมทรัพย์ผ่านสำนักงานแฟรนไชส์หลายแห่ง

โปรเจ็กต์ภายในโปรเจ็กต์หนึ่งของเราใช้เวลาคอมไพล์ลดลงจาก 11 นาทีเหลือประมาณ 1 นาที ซึ่งเป็นความสำเร็จที่น่าประทับใจ และตอนนี้เรากําลังพยายามนํา Bazel ไปใช้กับโปรเจ็กต์อื่นๆ เพิ่มเติม (การทดสอบ Google Cloud Build และ Bazel)

Etsy

Etsy เป็นเว็บไซต์อีคอมเมิร์ซที่มุ่งเน้นสินค้าและอุปกรณ์งานฝีมือหรือวินเทจ รวมถึงสินค้าผลิตจากโรงงานที่ไม่เหมือนใคร

โดยบริษัทใช้ Bazel เพื่อสร้างและทดสอบแพลตฟอร์มการค้นหาที่ใช้ Java Bazel จะสร้างทั้งแพ็กเกจสําหรับเซิร์ฟเวอร์ Bare Metal และอิมเมจ Docker ที่ซ้ำได้

Evertz.io

Evertz.io เป็นแพลตฟอร์ม SaaS แบบหลายผู้เช่าและไม่มีเซิร์ฟเวอร์ที่ให้บริการที่คุ้มค่าและครอบคลุมหลายภูมิภาคทั่วโลกแก่อุตสาหกรรมสื่อการออกอากาศ ซึ่งสร้างขึ้นโดย Evertz Microsystems

เว็บไซต์สร้างขึ้นและใช้งานได้อย่างสมบูรณ์ด้วยเวิร์กโฟลว์ Angular และ Bazel (แหล่งที่มา)

FINDMINE

FINDMINE เป็นเทคโนโลยีการทำงานอัตโนมัติสำหรับอุตสาหกรรมค้าปลีกที่ใช้แมชชีนเลิร์นนิงเพื่อปรับขนาดกระบวนการดูแลจัดการผลิตภัณฑ์ที่ต้องทำด้วยตนเองและซับซ้อนในปัจจุบัน เราใช้ Bazel เพื่อทำให้กระบวนการสร้าง การทดสอบ และการติดตั้งใช้งานแพ็กเกจ Python ทั้งหมดเป็นแบบอัตโนมัติ

Flexport

Flexport เป็นผู้ให้บริการขนส่งสินค้าทั่วโลกที่ขับเคลื่อนด้วยเทคโนโลยี โดยพันธกิจของเราคือการทําให้การค้าทั่วโลกง่ายขึ้นสําหรับทุกคน ที่ Flexport เราใช้ Bazel เพื่อสร้าง/ทดสอบบริการ Java/JavaScript และไลบรารีไคลเอ็นต์ รวมถึงสร้างโค้ด Java และ Ruby จากคําจํากัดความ protobuf อ่านเกี่ยวกับวิธีที่เราเรียกใช้การทดสอบ JUnit 5 แต่ละรายการแยกกันด้วย Bazel

Foursquare

พันธกิจของ Foursquare คือการสร้างเทคโนโลยีที่เชื่อมช่องว่างระหว่างพื้นที่ดิจิทัลและสถานที่จริงอย่างมีความหมาย เราจัดการโค้ด Scala และ Python หลายล้านบรรทัดซึ่งขับเคลื่อนแอปพลิเคชันที่ใช้ข้อมูลจำนวนมาก รวมถึงกระบวนการสร้างโค้ดและการสร้างคอนเทนเนอร์ที่ซับซ้อนด้วย Bazel

GermanTechJobs

Bazel ทำให้เวิร์กโฟลว์ของเราง่ายขึ้น 10 เท่าและเปิดใช้ฟีเจอร์การจัดส่งในวงกว้าง

Google

Bazel ออกแบบมาเพื่อให้ปรับขนาดตามความต้องการของ Google และเป็นไปตามข้อกำหนดของ Google ในด้านความสามารถในการทำซ้ำและการรองรับแพลตฟอร์ม/ภาษา ซอฟต์แวร์ทั้งหมดที่ Google สร้างขึ้นโดยใช้ Bazel Google ใช้ Bazel และกฎของ Bazel ในการสร้างหลายล้านครั้งทุกวัน

Huawei

Huawei Technologies ใช้ Bazel ในโปรเจ็กต์ประมาณ 30 โปรเจ็กต์ ซึ่งเป็นโปรเจ็กต์ Java/Scala/Go ยกเว้นโปรเจ็กต์ Go ที่เดิมสร้างขึ้นโดย Maven เราเขียนเครื่องมือง่ายๆ เพื่อแปลโปรเจ็กต์ที่สร้างด้วย Maven เป็นโปรเจ็กต์ที่สร้างด้วย Bazel โปรเจ็กต์จำนวนมากขึ้นจะใช้ Bazel ในอนาคตอันใกล้

IMC Trading

IMC เป็นบริษัทซื้อขายหลักทรัพย์เพื่อตนเองและเป็นผู้สร้างตลาดระดับโลกที่มีสำนักงานใหญ่ในอัมสเตอร์ดัม เราใช้ Bazel เพื่อสร้างและทดสอบโปรเจ็กต์ Java/C++/Python/SystemVerilog อย่างต่อเนื่อง

Improbable.io

Improbable.io พัฒนา SpatialOS ซึ่งเป็นระบบปฏิบัติการแบบกระจายที่ช่วยสร้างการจําลองขนาดใหญ่ที่มีเอนทิตีที่ซับซ้อนหลายล้านรายการ

Interaxon

InteraXon เป็นบริษัทคอมพิวเตอร์ที่ควบคุมด้วยความคิดซึ่งสร้างแพลตฟอร์มฮาร์ดแวร์และซอฟต์แวร์เพื่อแปลงคลื่นสมองให้เป็นสัญญาณดิจิทัล

Jupiter

Jupiter เป็นบริษัทที่ให้บริการจัดส่งของใช้ทั่วไปและของใช้ในบ้านทุกสัปดาห์

โดยใช้ Bazel ในโค้ดแบ็กเอนด์ โดยเฉพาะเพื่อคอมไพล์โปรโตคอลและ Kotlin เป็นไบนารี JVM โดยใช้การแคชระยะไกล (source)

Just

Just เป็นบริษัทเทคโนโลยีทางการเงินสำหรับองค์กรที่มีสำนักงานใหญ่ในนอร์เวย์ ซึ่งสร้างโซลูชันซอฟต์แวร์เพื่อเปลี่ยนวิธีจัดการความเสี่ยงและสภาพคล่องของผู้ดูแลการเงินของบริษัททั่วโลก กองกองแอปพลิเคชันทั้งหมดสร้างขึ้นด้วย Bazel

บรรทัด

Line เป็นแอปสำหรับการสื่อสารแบบทันที ซึ่งเป็นแอปพลิเคชันการรับส่งข้อความที่ได้รับความนิยมสูงสุดในญี่ปุ่น โดยใช้ Bazel ในโค้ดเบสที่ประกอบด้วย Swift ประมาณ 60% และ C/C++/Objective-C/Objective-C++ ประมาณ 40% (แหล่งที่มา)

หลังจากเปลี่ยนไปใช้ Bazel เราได้รับเวลาในการบิลด์ที่ดีขึ้นอย่างมาก ซึ่งช่วยปรับปรุงเวลาในการดำเนินการได้อย่างมากในช่วง QA การเผยแพร่บิลด์ใหม่ให้แก่ผู้ทดสอบไม่ได้หมายความว่าจะต้องรออีก 1 ชั่วโมงเพื่อให้ระบบสร้างและทดสอบอีกต่อไป (การปรับปรุงประสิทธิภาพการสร้างของ LINE สำหรับ iOS ด้วย Bazel)

LingoChamp

LingoChamp ให้บริการโซลูชันแบบมืออาชีพแก่ผู้เรียนภาษาอังกฤษ เราใช้ Bazel สำหรับโปรเจ็กต์ Go, Java และ Python

LinkedIn

LinkedIn ซึ่งเป็นบริษัทในเครือของ Microsoft เป็นเครือข่ายโซเชียลสำหรับมืออาชีพที่ใหญ่ที่สุดในโลก LinkedIn ใช้ Bazel ในการสร้างแอป iOS

Lucid Software

Lucid Software เป็นผู้นำด้านการทำงานร่วมกันด้วยภาพ ซึ่งช่วยให้ทีมเห็นและสร้างอนาคตจากแนวคิดสู่ความเป็นจริง ผลิตภัณฑ์ของ Lucid ได้แก่ Lucidchart, Lucidspark และ Lucidscale ช่วยให้ทีมทำงานร่วมกันได้ไม่ว่าจะอยู่ที่ใดก็ตาม โดยมุ่งเน้นที่วิสัยทัศน์ร่วมกัน ชี้แจงความซับซ้อน และทำงานร่วมกันด้วยภาพ

Lucid ใช้ Bazel เพื่อสร้างโค้ด Scala และ TypeScript หลายล้านบรรทัด การย้ายข้อมูลไปยัง Bazel ทำให้การสร้างเร็วขึ้นอย่างมาก ลดการพึ่งพาภายนอกในสภาพแวดล้อมการสร้าง และลดความซับซ้อนของประสบการณ์การใช้งานระบบในรุ่นสำหรับนักพัฒนาซอฟต์แวร์ Bazel ช่วยเพิ่มประสิทธิภาพการทำงานของนักพัฒนาซอฟต์แวร์ที่ Lucid และช่วยให้เติบโตได้อย่างต่อเนื่อง

Lyft

Lyft ใช้ Bazel สําหรับแอป iOS (ซอร์สโค้ด) และ Android

Meetup

Meetup เป็นพอร์ทัลโซเชียลเน็ตเวิร์กออนไลน์ที่อำนวยความสะดวกในการประชุมกลุ่มแบบออฟไลน์ ทีมวิศวกรของ Meetup มีส่วนร่วมใน rules_scala และเป็นผู้จัดการrules_avro และ rules_openapi

Nvidia

ที่ Nvidia เราใช้ dazel(Docker Bazel) สําหรับ Python เพื่อแก้ปัญหาข้อจํากัดบางอย่างของ Python ใน Bazel ส่วนที่เหลือจะทำงานใน bazel ปกติ (ส่วนใหญ่เป็น Go / Scala/ C++/ Cuda) (source)

Peloton Technology

Peloton Technology เป็นบริษัทเทคโนโลยียานพาหนะอัตโนมัติที่จัดการกับอุบัติเหตุเกี่ยวกับรถบรรทุกและการใช้เชื้อเพลิง โดยบริษัทใช้ Bazel เพื่อเปิดใช้บิลด์ที่เชื่อถือได้สำหรับระบบความปลอดภัยยานยนต์

Pigweed

Pigweed เป็นโซลูชันโอเพนซอร์สสําหรับการพัฒนาผลิตภัณฑ์แบบฝังที่ยั่งยืน มีประสิทธิภาพ และรวดเร็วสําหรับทีมขนาดใหญ่ Pigweed ติดตั้งใช้งานในอุปกรณ์หลายล้านเครื่อง รวมถึงชุดอุปกรณ์ Pixel ของ Google, ตัวควบคุมอุณหภูมิ Nest, ดาวเทียม และโดรนภาคพื้นดินอัตโนมัติ

Pigweed ใช้ Bazel เป็นระบบการสร้างหลัก บล็อกโพสต์เกี่ยวกับ Bazel สำหรับระบบฝังจะอธิบายเหตุผลที่เราคิดว่า Bazel เป็นระบบการสร้างที่ยอดเยี่ยมสำหรับโปรเจ็กต์แบบฝัง

Pinterest

Pinterest คือแคตตาล็อกไอเดียของโลก โดยบริษัทใช้ Bazel เพื่อสร้างบริการแบ็กเอนด์ (Java/C++) และแอปพลิเคชัน iOS (Objective-C/C++) ต่างๆ

เราพบว่า Bazel เหมาะกับเป้าหมายของเรามากที่สุดในการสร้างรากฐานเพื่อปรับปรุงประสิทธิภาพให้ดีขึ้นหลายเท่า ลดความแปรปรวนในสภาพแวดล้อมการสร้าง และนำไปใช้งานทีละน้อย ด้วยเหตุนี้ เราจึงจัดส่งรุ่น iOS ทั้งหมดโดยใช้ Bazel การพัฒนาบิลด์ iOS ที่รวดเร็วและเชื่อถือได้ที่ Pinterest

PubRef

PubRef เป็นแพลตฟอร์มการเผยแพร่ทางวิทยาศาสตร์ที่กำลังได้รับความนิยม โดยใช้ Bazel กับ rules_closure เพื่อสร้างฟีดหน้าเว็บ กฎ Java ดั้งเดิมเพื่อสร้างแบ็กเอนด์หลัก rules_go, rules_node และ rules_kotlin เพื่อสร้างบริการแบ็กเอนด์ที่หลากหลาย rules_protobuf ใช้เพื่อสนับสนุนการสื่อสารแบบ gRPC ระหว่างบริการแบ็กเอนด์ PubRef.org ตั้งอยู่ในเมืองโบลเดอร์ รัฐโคโลราโด

Redfin

Redfin เป็นบริษัทนายหน้าอสังหาริมทรัพย์รุ่นถัดไปที่มีตัวแทนในพื้นที่ที่ให้บริการแบบครบวงจร โดยใช้ Bazel เพื่อสร้างและติดตั้งใช้งานเว็บไซต์และบริการแบ็กเอนด์ต่างๆ

เราได้ทํา Conversion ไปเกือบหมดแล้ว ทุกอย่างจึงดีขึ้นมาก บิลด์ CI ของเราเร็วขึ้น (เร็วขึ้นมาก: ก่อนหน้านี้ใช้เวลา 40-90 นาที แต่ตอนนี้บิลด์สำหรับนักพัฒนาซอฟต์แวร์ใช้เวลาโดยเฉลี่ย 5-6 นาที) ความน่าเชื่อถือก็สูงขึ้นมากด้วย ข้อมูลนี้วัดได้ยากกว่า แต่การเปลี่ยนจากการพิจารณาว่าการสร้างที่ไม่สําเร็จซึ่งอธิบายไม่ได้เป็น "เรื่องที่เกิดขึ้นเอง" ไปเป็นการมองว่าเป็นปัญหาจริงที่ต้องแก้ไขได้ทําให้เราอยู่ในวงจรที่มีประสิทธิภาพมากขึ้นเรื่อยๆ (เราเปลี่ยนจาก Maven เป็น Bazel และทำให้การสร้างเร็วขึ้น 10 เท่า)

Ritual

Ritual เป็นแอปรับอาหารและเครื่องดื่มบนอุปกรณ์เคลื่อนที่ที่เชื่อมต่อร้านอาหารกับลูกค้าเพื่อมอบเครื่องมือที่ใช้งานง่ายและประหยัดเวลาในการรับอาหารและเครื่องดื่มที่ต้องการโดยไม่ต้องรอ Ritual ใช้ Bazel สําหรับบริการแบ็กเอนด์

Snap

Snap ซึ่งเป็นนักพัฒนาแอปรับส่งข้อความ Snapchat ได้ย้ายข้อมูลจาก Buck ไปยัง Bazel ในปี 2020 (แหล่งที่มา) ดูรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการได้ที่บล็อกวิศวกร

Stripe

Stripe มีโซลูชันการชำระเงินผ่านอุปกรณ์เคลื่อนที่ โดยบริษัทใช้ Bazel ในไปป์ไลน์การสร้างและทดสอบตามที่ระบุไว้ในบล็อกวิศวกร

Tinder

Tinder ย้ายข้อมูลแอป iOS จาก CocoaPods ไปยัง Bazel ในปี 2021 (แหล่งที่มา)

Tink

Tink เป็นบริษัท FinTech สัญชาติยุโรปที่พัฒนาวิธีที่ดีที่สุดในการเชื่อมต่อกับธนาคารทั่วยุโรป

โดยกำลังใช้ Bazel เพื่อสร้างบริการแบ็กเอนด์จาก Monorepo แบบหลายภาษา วิศวกรของ Tink กำลังจัดกลุ่ม bazel build //stockholm/... meetup

Tokopedia

Tokopedia เป็นบริษัทเทคโนโลยีในอินโดนีเซียที่เชี่ยวชาญด้านอีคอมเมิร์ซ โดยมีผู้ใช้ที่ใช้งานอยู่กว่า 90 ล้านคนต่อเดือนและผู้ขายกว่า 7 ล้านรายในแพลตฟอร์ม

ทีมเขียนบทความวิธีที่ Tokopedia เพิ่มเวลาสร้าง iOS ได้เร็วขึ้น 1,000% ซึ่งอธิบายว่า Bazel ช่วยเร่งความเร็วการสร้างได้อย่างไร ระยะเวลาการสร้างลดลงจาก 55 นาทีเหลือ 10 นาทีเมื่อใช้ Bazel และเหลือ 5 นาทีเมื่อใช้การแคชระยะไกล

Trunk.io

Trunk เป็นบริษัทในซานฟรานซิสโกที่ได้รับการสนับสนุนจาก Andreessen Horowitz และ Initialized Capital Trunk มีบริการผสานคำขอดึงที่มีประสิทธิภาพพร้อมการสนับสนุนชั้นยอดสำหรับระบบการสร้าง Bazel บริการผสานของ Trunk ใช้ประโยชน์จากความเข้าใจของ Bazel เกี่ยวกับทรัพยากรภายในโค้ดเบสเพื่อสร้างช่องทางการผสานแบบขนานอย่างชาญฉลาด ซึ่งช่วยให้สามารถทดสอบและผสานการเปลี่ยนแปลงอิสระพร้อมกันได้

Monorepo ภายในของ Trunk จะสร้าง C++ 20 และ TypeScript สมัยใหม่ไปพร้อมๆ กัน โดยใช้ความรู้เกี่ยวกับกราฟ Bazel เพื่อทดสอบและผสานโค้ดอย่างมีเลือกสรร

Twitter

Twitter ได้ตัดสินใจย้ายข้อมูลจาก Pants ไปใช้ Bazel เป็นเครื่องมือหลักในการสร้าง (แหล่งที่มา)

Two Sigma

Two Sigma เป็นบริษัทเทคโนโลยีที่มีสำนักงานใหญ่ในนิวยอร์ก ซึ่งมุ่งเน้นค้นหาคุณค่าจากข้อมูลของโลก

TypeDB

โลโก้ TypeDB

TypeDB เป็นเทคโนโลยีฐานข้อมูลที่สามารถใช้ในการสร้างโมเดลข้อมูลที่เชื่อมโยงกันได้อย่างง่ายดาย ข้อมูลจะเข้าถึงได้ผ่านภาษาการค้นหาแบบเป็นทางการและแบบหลายรูปแบบอย่าง TypeQL โดยใช้การค้นหาที่เข้าใจง่ายและทำงานได้อย่างรวดเร็ว

Bazel ช่วยให้ทีม TypeDB สร้าง CI และไปป์ไลน์การจัดจำหน่ายที่มีการประสานงานกันสูง ซึ่งจัดการที่เก็บข้อมูลจำนวนมากในภาษาที่หลากหลาย และทำให้ใช้งานได้ในแพลตฟอร์มต่างๆ ได้อย่างราบรื่น ทีม TypeDB ได้เผยแพร่กฎ Bazel สําหรับการประกอบและการใช้การแจกจ่ายซอฟต์แวร์ด้วย

Uber

Uber เป็นบริษัทเรียกรถ การมีนักพัฒนาซอฟต์แวร์ที่ใช้งานอยู่ 900 คน ทำให้ Go Monorepo ของ Uber เป็นหนึ่งในที่เก็บ Go ที่ใหญ่ที่สุดที่ใช้ Bazel ดูข้อมูลเพิ่มเติมเกี่ยวกับประสบการณ์ของ Uber ได้ที่บทความการสร้าง Monorepo ของ Go ของ Uber ด้วย Bazel

กลุ่มเทคโนโลยีขั้นสูงของ Uber

กลุ่มเทคโนโลยีขั้นสูงของ Uber มุ่งเน้นที่การพัฒนายานพาหนะไร้คนขับของ Uber ซึ่งรวมถึงรถบรรทุก/ขนส่งสินค้าและการแชร์รถไร้คนขับ องค์กรใช้ Bazel เป็นระบบบิลด์หลัก

Vistar Media

Vistar Media เป็นแพลตฟอร์มโฆษณาที่ช่วยให้แบรนด์เข้าถึงผู้บริโภคโดยอิงตามพฤติกรรมในชีวิตจริง ทีมวิศวกรของทีมนี้ส่วนใหญ่อยู่ในฟิลาเดลเฟียและใช้ Bazel สำหรับบิลด์ การปรับใช้ เพื่อเร่งการทดสอบ และรวมรีโพซิทอรีที่เขียนด้วยเทคโนโลยีต่างๆ

VMware

VMware ใช้ Bazel เพื่อสร้างบิลด์ที่เชื่อถือได้และแน่นอนขณะพัฒนาผลิตภัณฑ์ที่สร้างสรรค์นวัตกรรมให้กับลูกค้า

Wix

Wix เป็นแพลตฟอร์มการพัฒนาเว็บบนระบบคลาวด์ แบ็กเอนด์ใช้โค้ด Java และ Scala โดยใช้การเรียกใช้จากระยะไกลกับ Google Cloud Build

เราพบว่าการบิลด์ที่สะอาดเร็วขึ้นประมาณ 5 เท่าเมื่อใช้การเรียกใช้จากระยะไกลของ bazel ซึ่งใช้ประโยชน์จากความสามารถที่ยอดเยี่ยมของการทำงานแบบขนานของการสร้าง/การทดสอบของ bazel เมื่อส่งการดำเนินการสร้าง/ทดสอบไปยังฟาร์มเวิร์กเกอร์ เวลาสร้างโดยเฉลี่ยเร็วขึ้นกว่า 10 เท่าเนื่องจากการใช้กลไกการแคชที่มีประสิทธิภาพของ Bazel (หากต้องการย้ายข้อมูลจาก Maven หรือ Gradle ไปยัง Bazel 5 คำถามสำคัญที่คุณควรถามตัวเอง)

Zenly

Zenly คือแผนที่แบบเรียลไทม์ของเพื่อนและครอบครัว ซึ่งเป็นวิธีที่สนุกที่สุดในการนัดเจอกัน หรือแค่อยากรู้กันว่ามีอะไรเกิดขึ้นบ้าง เพื่อให้คุณรู้สึกเหมือนอยู่ด้วยกัน แม้ว่าจะอยู่คนละที่


โปรเจ็กต์โอเพนซอร์สที่ใช้ Bazel

Abseil

Abseil คือคอลเล็กชันโค้ด C++ แบบโอเพนซอร์ส (เป็นไปตาม C++11) ที่ออกแบบมาเพื่อเสริมไลบรารีมาตรฐาน C++

Angular

Angular เป็นเฟรมเวิร์กเว็บที่ได้รับความนิยม Angular สร้างขึ้นด้วย Bazel

Apollo

Apollo เป็นสถาปัตยกรรมที่มีประสิทธิภาพสูงและยืดหยุ่น ซึ่งช่วยเร่งการพัฒนา การทดสอบ และการใช้งานยานพาหนะไร้คนขับ

brpc

เฟรมเวิร์ก RPC ระดับอุตสาหกรรมที่ใช้ทั่วทั้ง Baidu โดยมีอินสแตนซ์มากกว่า 1,000,000 รายการ(ไม่รวมไคลเอ็นต์) และบริการหลายพันประเภท ซึ่งเรียกว่า "baidu-rpc" ใน Baidu

cert-manager

cert-manager เป็นส่วนเสริมของ Kubernetes สำหรับจัดการและออกใบรับรอง TLS จากแหล่งที่มาต่างๆ โดยอัตโนมัติ ซึ่งจะช่วยให้มั่นใจว่าใบรับรองจะถูกต้องและเป็นปัจจุบันเป็นระยะๆ และพยายามต่ออายุใบรับรองในเวลาที่เหมาะสมก่อนหมดอายุ

CallBuilder

เครื่องมือสร้างโค้ด Java ที่ช่วยให้คุณสร้างตัวสร้างได้โดยเขียนฟังก์ชันเดียว

CPPItertools

ไลบรารี C++ ที่ให้บริการส่วนเสริมของวงวน for ตามช่วงซึ่งได้รับแรงบันดาลใจจากไลบรารี builtins และ itertools ของ Python ไลบรารีนี้ใช้การประเมินแบบเลื่อนเวลาเมื่อเป็นไปได้เช่นเดียวกับ itertools และฟังก์ชันในตัวของ Python3

Copybara

Copybara เป็นเครื่องมือสำหรับเปลี่ยนรูปแบบและย้ายโค้ดระหว่างที่เก็บข้อมูล

Dagger

Dagger เป็นเฟรมเวิร์กการฉีด Dependency แบบคงที่ทั้งหมดที่ทำงานในเวลาคอมไพล์สำหรับทั้ง Java และ Android

DAML

DAML เป็นภาษาสมาร์ตกราฟต์สําหรับการสร้างแอปพลิเคชันแบบกระจายที่พร้อมใช้งานในอนาคตบนรันไทม์ที่ปลอดภัยและเคารพความเป็นส่วนตัว

DeepMind Lab

แพลตฟอร์ม 3 มิติที่ปรับแต่งได้สําหรับการวิจัย AI ที่อิงตามตัวแทน

Drake

Drake เป็นกล่องเครื่องมือ C++ ที่เริ่มต้นจาก MIT และตอนนี้ดำเนินการโดยสถาบันวิจัยโตโยต้า ซึ่งเป็นชุดเครื่องมือสำหรับวิเคราะห์พลวัตของหุ่นยนต์และสร้างระบบควบคุมหุ่นยนต์ โดยเน้นที่การออกแบบ/การวิเคราะห์ตามการเพิ่มประสิทธิภาพ

Envoy

พร็อกซี L7 และบัสการสื่อสาร C++

มีแนวโน้มที่จะเกิดข้อผิดพลาด

ตรวจหาข้อผิดพลาดที่พบบ่อยใน Java เป็นข้อผิดพลาดที่พบขณะคอมไพล์ (อยู่ระหว่างการย้ายข้อมูลไปยัง Bazel)

พร็อกซีบริการที่ขยายได้

พร็อกซีบริการที่ขยายได้ หรือ ESP คือพร็อกซีที่เปิดใช้ความสามารถการจัดการ API สําหรับบริการ JSON/REST หรือ gRPC API การติดตั้งใช้งานปัจจุบันจะอิงตามเซิร์ฟเวอร์พร็อกซีย้อนกลับ HTTP ของ NGINX

FFruit

FFruit เป็นแอปพลิเคชัน Android แบบโอเพนซอร์สและไม่มีค่าใช้จ่ายสำหรับบริการยอดนิยมอย่าง Falling Fruit

Gerrit Code Review

Gerrit เป็นเครื่องมือตรวจสอบโค้ดและการจัดการโปรเจ็กต์สำหรับโปรเจ็กต์ที่ใช้ Git

Gitiles

Gitiles เป็นเครื่องมือเรียกดูที่เก็บที่เรียบง่ายสำหรับที่เก็บ Git ซึ่งสร้างขึ้นจาก JGit

Grakn

Grakn (https://grakn.ai/) เป็นเครื่องมือกราฟความรู้สำหรับจัดระเบียบเครือข่ายข้อมูลที่ซับซ้อนและทำให้ค้นหาได้

GRPC

ระบบการเรียกใช้โพรซีเยอร์ระยะไกล (RPC) ที่เป็นกลางด้านภาษาและแพลตฟอร์ม (Bazel เป็นระบบบิลด์ที่รองรับ แต่ไม่ใช่ระบบหลัก)

gVisor

gVisor คือแซนด์บ็อกซ์รันไทม์คอนเทนเนอร์

Guetzli

Guetzli คือโปรแกรมเข้ารหัส JPEG ที่มุ่งเน้นความหนาแน่นของการบีบอัดที่ยอดเยี่ยมในคุณภาพภาพระดับสูง

Gulava

เครื่องมือสร้างโค้ด Java ที่ช่วยให้คุณเขียนพริเนกต์สไตล์ Prolog และใช้พริเนกต์เหล่านั้นจากโค้ด Java ปกติได้อย่างราบรื่น

Heron

Heron เป็นเครื่องมือประมวลผลสตรีมแบบกระจายและคงทนต่อข้อผิดพลาดแบบเรียลไทม์จาก Twitter

Internet Computer Protocol

Internet Computer Protocol เป็นเครือข่ายบล็อกเชนที่เผยแพร่ต่อสาธารณะ ซึ่งช่วยให้สามารถเรียกใช้การประมวลผลทั่วไปแบบทำซ้ำได้ เพื่อให้บริการแอปพลิเคชันหลายแสนรายการและผู้ใช้แอปพลิเคชันเหล่านั้น

Jazzer

Jazzer เป็นโปรแกรมสร้างข้อมูลเท็จสําหรับ Java และภาษาอื่นๆ ที่ใช้ JVM ซึ่งผสานรวมกับ JUnit 5

JGit

JGit เป็นไลบรารี Java ล้วนๆ ขนาดเล็กที่ใช้ระบบการควบคุมเวอร์ชัน Git

Jsonnet

ภาษาการสร้างการกำหนดค่าที่สง่างามและระบุอย่างเป็นทางการสำหรับ JSON (Bazel เป็นระบบบิลด์ที่รองรับ)

Kubernetes

Kubernetes เป็นระบบโอเพนซอร์สสำหรับจัดการแอปพลิเคชันที่มีคอนเทนเนอร์ในโฮสต์หลายเครื่อง โดยให้กลไกพื้นฐานสำหรับการติดตั้งใช้งาน การดูแลรักษา และการขยายขนาดแอปพลิเคชัน

Kythe

ระบบนิเวศสําหรับการสร้างเครื่องมือที่ทํางานกับโค้ด

ls-lint

ระบบไฟล์ไดเรกทอรีและชื่อไฟล์ที่รวดเร็วมาก ช่วยให้ระบบไฟล์โปรเจ็กต์มีโครงสร้าง

Nomulus

บริการรีจิสทรีชื่อโดเมนระดับบนสุดใน Google App Engine

ONOS : ระบบปฏิบัติการเครือข่ายแบบเปิด

ONOS เป็นแพลตฟอร์มคอนโทรลเลอร์ SDN เพียงแพลตฟอร์มเดียวที่รองรับการเปลี่ยนจากเครือข่ายเดิมแบบ "บราวน์ฟิลด์" ไปเป็นเครือข่าย SDN แบบ "กรีนฟิลด์" ซึ่งจะเปิดโอกาสให้ผู้ให้บริการเครือข่ายมีความสามารถใหม่ๆ ที่น่าสนใจ รวมถึงจุดต้นทุนในการติดตั้งใช้งานและค่าใช้จ่ายในการดำเนินงานที่เปลี่ยนแปลงไป

PetitParser สำหรับ Java

ไวยากรณ์สําหรับภาษาโปรแกรมมักจะระบุแบบคงที่ เนื่องจากยากที่จะเขียนและนํามาใช้ซ้ำเนื่องจากความคลุมเครือที่จะเกิดขึ้นอย่างหลีกเลี่ยงไม่ได้ PetitParser รวมแนวคิดต่างๆ จากการแยกวิเคราะห์แบบไม่ใช้สแกนเนอร์ ตัวรวมตัวแยกวิเคราะห์ ไวยากรณ์นิพจน์การแยกวิเคราะห์ และตัวแยกวิเคราะห์แบบเก็บข้อมูลไว้ใช้ซ้ำเพื่อสร้างไวยากรณ์และตัวแยกวิเคราะห์เป็นออบเจ็กต์ที่กำหนดค่าใหม่แบบไดนามิกได้

PlaidML

PlaidML เป็นเฟรมเวิร์กสำหรับทำให้การเรียนรู้เชิงลึกใช้งานได้ทุกที่

Project V

Project V คือชุดเครื่องมือที่จะช่วยคุณสร้างเครือข่ายความเป็นส่วนตัวของคุณเองบนอินเทอร์เน็ต

การใช้งาน Ethereum 2.0 ของ Prysmatic Labs

Prysm เป็นไคลเอ็นต์การแยกข้อมูลสำหรับ Ethereum 2.0 ซึ่งเป็นแพลตฟอร์มการประมวลผลแบบกระจายศูนย์ที่อิงตามบล็อกเชน

Ray

Ray เป็นเฟรมเวิร์กการดำเนินการแบบกระจายที่มีประสิทธิภาพสูงและยืดหยุ่น

Resty

Resty เป็นไลบรารีไคลเอ็นต์ HTTP และ REST แบบง่ายสําหรับ Go (ได้รับแรงบันดาลใจจาก Ruby rest-client)

Roughtime

Roughtime เป็นโปรเจ็กต์ที่มีจุดประสงค์เพื่อซิงค์เวลาอย่างปลอดภัย

Selenium

Selenium เป็นเฟรมเวิร์กแบบพกพาสําหรับการทดสอบเว็บแอปพลิเคชัน

Semantic

Semantic เป็นไลบรารี Haskell และเครื่องมือบรรทัดคำสั่งสำหรับแยกวิเคราะห์ วิเคราะห์ และเปรียบเทียบซอร์สโค้ด ซึ่งพัฒนาโดย GitHub (และใช้สำหรับการไปยังส่วนต่างๆ ของโค้ด)

แสดงผล

Served เป็นไลบรารี C++ สำหรับการสร้างเว็บเซิร์ฟเวอร์ RESTful ที่มีประสิทธิภาพสูง

Sonnet

Sonnet เป็นไลบรารีที่สร้างขึ้นบน TensorFlow สำหรับการสร้างเครือข่ายประสาทที่ซับซ้อน

Sorbet

Sorbet เป็นโปรแกรมตรวจสอบประเภทที่รวดเร็วและมีประสิทธิภาพสำหรับ Ruby ชุดย่อย เครื่องมือนี้ปรับขนาดให้เข้ากับฐานโค้ดที่มีโค้ดหลายล้านบรรทัด และสามารถนำไปใช้งานได้ทีละส่วน

Spotify

Spotify ใช้ Bazel เพื่อสร้างแอป iOS และ Android (แหล่งที่มา)

Tink

Tink เป็นไลบรารีโอเพนซอร์สแบบหลายภาษาและข้ามแพลตฟอร์มที่ให้บริการ API การเข้ารหัสที่ปลอดภัย ใช้งานอย่างถูกต้องได้ง่าย และป้องกันการใช้ในทางที่ผิดได้

TensorFlow

ไลบรารีซอฟต์แวร์โอเพนซอร์สสําหรับปัญญาประดิษฐ์

Turbo Santa

โปรแกรมจำลอง GameBoy ที่ไม่ขึ้นอยู่กับแพลตฟอร์ม

Wycheproof

Project Wycheproof ทดสอบไลบรารีการเข้ารหัสเพื่อหาช่องโหว่ที่ทราบ

XIOSim

XIOSim เป็นเครื่องจำลองสถาปัตยกรรมไมโครแบบละเอียดในโหมดผู้ใช้สำหรับสถาปัตยกรรม x86

ZhihuDailyPurify

ZhihuDailyPurify เป็น Zhihu Daily เวอร์ชันเบา ซึ่งเป็นเว็บถามและตอบภาษาจีน