กลุ่มโครงสร้างพื้นฐานขับเคลื่อนอนาคตของทุกสิ่งที่เราทำที่ Roblox

- กลุ่มโครงสร้างพื้นฐานของเราออกแบบ สร้าง และดำเนินงานระบบจัดเก็บข้อมูล การประมวลผล เครือข่าย ความปลอดภัย และระบบเพิ่มประสิทธิภาพทางวิศวกรรม ซึ่งเป็นพื้นฐานที่ขับเคลื่อนแพลตฟอร์ม Roblox ระดับโลก
- ระบบเหล่านี้ทำงานในระดับขนาดใหญ่—รองรับผู้ใช้ที่ใช้งานรายวัน 77.7 ล้านคน* ข้อมูลที่ส่งมอบเป็นเอกซะไบต์ และการเชื่อมต่อพร้อมกันมากกว่า 250 ล้านครั้ง ทั้งหมดนี้ครอบคลุมเซิร์ฟเวอร์มากกว่า 135,000 เครื่อง
- ทุกสิ่งที่กลุ่มของเราทำมีวัตถุประสงค์เพื่อเพิ่มประสิทธิภาพและความน่าเชื่อถือของระบบของเราให้สูงสุด และช่วยให้วิศวกรของเราสามารถทำงานได้อย่างมีประสิทธิภาพมากที่สุด
ทุกวินาทีของทุกวัน วิศวกรผลิตภัณฑ์ที่ Roblox สามารถใช้บริการมากกว่า 2,000 รายการที่ทำงานบนโครงสร้างพื้นฐานคลาวด์ภายในองค์กรระดับโลกของเรา แพลตฟอร์มของเราสนับสนุนการอ่านและเขียนหลายล้านครั้ง จัดการปริมาณข้อมูลหลายเทราไบต์ และประมวลผลคำขอ HTTP หลายสิบล้านรายการ เมื่อผู้ใช้ที่ใช้งานรายวัน 77.7 ล้านคน* ของเรามาที่ Roblox พวกเขาทำเช่นนั้นผ่านการเชื่อมต่อพร้อมกันมากกว่า 250 ล้านการเชื่อมต่อ
ทั้งหมดนี้คือขนาดของระบบเทคโนโลยีที่ Roblox และขอบเขตของกลุ่มโครงสร้างพื้นฐานของเรา ที่รู้จักกันในชื่อ Infra พวกเขาออกแบบ สร้าง และดำเนินการระบบจัดเก็บ การประมวลผล เครือข่าย ความปลอดภัย และระบบเพิ่มประสิทธิภาพทางวิศวกรรมของบริษัท รวมถึงศูนย์ข้อมูลของเรา เป้าหมายของ Infra คือการนำเสนอระบบที่สามารถปรับขนาดได้ เชื่อถือได้ และใช้งานง่าย เหนือสิ่งอื่นใด กลุ่มนี้ให้ความสำคัญกับตัวชี้วัดหลักสามประการ:
- ความพร้อมใช้งาน—ความน่าเชื่อถือของระบบของเรา
- ต้นทุนการให้บริการ—ประสิทธิภาพของระบบของเรา
- ประสิทธิภาพการทำงาน—พวกเขาทำให้วิศวกรของ Roblox ที่สร้างบนโครงสร้างพื้นฐานมีประสิทธิภาพมากเพียงใด
ตามที่แม็กซ์ รอสส์ รองประธานฝ่ายวิศวกรรมและหัวหน้ากลุ่มโครงสร้างพื้นฐานกล่าวไว้ว่า "ทุกสิ่งที่เราทำมีเป้าหมายเพื่อพัฒนาสิ่งใดสิ่งหนึ่งหรือผสมผสานทั้งสามสิ่งนี้เข้าด้วยกัน—ความพร้อมใช้งาน ต้นทุนการให้บริการ และประสิทธิภาพการทำงาน"
ทุกสิ่งที่เราทำมีเป้าหมายเพื่อส่งเสริมสิ่งใดสิ่งหนึ่งหรือการผสมผสานของสิ่งทั้งสามอย่างนี้—ความพร้อมใช้งาน, ต้นทุนการให้บริการ, และผลผลิต.
แก้ปัญหาใหม่ ๆ ทุกวัน
เมื่อมีผู้ใช้มากกว่าหนึ่งล้านคนเข้าร่วมประสบการณ์ยอดนิยมบน Roblox หลังจากการอัปเดตครั้งใหญ่ ปรากฏการณ์ที่เรียกว่า "ฝูงชนถล่ม" จะเกิดขึ้น ซึ่งในกรณีนี้ ผู้สร้างของเราสามารถวางใจได้ เพราะหน้าที่ของทีม Infra คือการรับประกันว่าวิศวกรผลิตภัณฑ์ของ Roblox จะสามารถสร้างแพลตฟอร์มที่มอบประสบการณ์ที่ดีที่สุดและเสถียรที่สุดให้กับผู้ใช้ของเราได้ และการทำงานเช่นนี้ หมายความว่าทีม Infra จะได้มีโอกาสจัดการกับระบบที่ซับซ้อนและแก้ไขปัญหาใหม่ ๆ อยู่ทุกวัน
ทำไม? เพราะเราไม่ได้เชื่อมต่อผู้ใช้หลายสิบล้านคนต่อวันเข้ากับศูนย์กลางการประมวลผลธุรกรรมแบบรวมศูนย์ ซึ่งเป็นปัญหาที่เข้าใจกันดีอยู่แล้ว แต่เรากำลังเชื่อมต่อพวกเขาเข้าหากันแบบเรียลไทม์ ทั่วโลก ทั้งหมดนี้ บริการนับพันของ Infra ทำงานบนเซิร์ฟเวอร์มากกว่า 135,000 เครื่อง ในศูนย์ข้อมูลหลักสองแห่ง ศูนย์ข้อมูลขอบเครือข่ายหลายแห่งทั่วโลก และผู้ให้บริการคลาวด์สาธารณะบางราย
ความพร้อมใช้งาน—ความน่าเชื่อถือของระบบของเรา

ปัจจัยสำคัญประการหนึ่งในการประสบความสำเร็จของธุรกิจของเราคือเวลาที่ผู้ใช้ใช้บน Roblox และเรารู้ว่ามีความสัมพันธ์โดยตรงระหว่างโครงสร้างพื้นฐานที่เชื่อถือได้กับการที่ผู้ใช้ใช้งานนานขึ้น
เราต้องการให้ผู้ใช้มีเวลาใช้งาน 99.99 เปอร์เซ็นต์ทุกเดือน ซึ่งหมายความว่าระบบของเราสามารถหยุดชะงักได้ไม่เกิน 0.01 เปอร์เซ็นต์ของชั่วโมงการใช้งาน และวิศวกรผลิตภัณฑ์ของเราคาดหวังว่าโครงสร้างพื้นฐานคลาวด์ภายในของเราจะทำงานได้อย่างน้อยเท่ากับคลาวด์สาธารณะใดๆ "โครงสร้างพื้นฐานของเราควรทำงานได้อย่างราบรื่นที่สุด" แดนนี่ หยวน ผู้อำนวยการฝ่ายเทคนิคกล่าว "เพื่อให้วิศวกรคนอื่นๆ สามารถสร้างผลิตภัณฑ์ที่จะทำให้ผู้ใช้ของเราประทับใจ"
โครงสร้างพื้นฐานของเราควรทำงานได้อย่างราบรื่นที่สุดเท่าที่จะเป็นไปได้ เพื่อให้วิศวกรคนอื่นๆ สามารถสร้างผลิตภัณฑ์ที่จะทำให้ผู้ใช้ของเราพึงพอใจ
วิธีหนึ่งที่เราดำเนินการคือ การนำความสามารถในการสังเกตการณ์และการเชื่อมต่อเครือข่ายมาใกล้กับแอปพลิเคชันที่ขับเคลื่อนประสบการณ์ของ Roblox มากขึ้น เราได้ติดตั้ง Envoy proxy sidecars ไว้ข้างๆ ทุกอินสแตนซ์ของบริการ และทดลองใช้ eBPF เพื่อสังเกตสถานะพื้นฐานของการเชื่อมต่อระหว่าง proxy และบริการภายนอก ซึ่งช่วยให้เราเข้าใจและที่สำคัญคือ ลดการสูญเสียแพ็กเก็ตได้ ตามที่ Rob Cameron ผู้อำนวยการฝ่ายเทคนิคอธิบาย
การหยุดให้บริการในวันฮาโลวีน
ความพยายามในการเพิ่มความน่าเชื่อถือของโครงสร้างพื้นฐานจำนวนมากของเรามาจากสิ่งที่เราได้เรียนรู้ในช่วงที่ระบบหยุดทำงานต่อเนื่องยาวนานถึง 73 ชั่วโมงในปี 2021 เหตุการณ์ครั้งนั้นเมื่อไม่กี่ปีที่แล้วกลายเป็นจุดเปลี่ยนสำคัญในแนวทางของเราในการสร้างโครงสร้างพื้นฐานที่มีความยืดหยุ่น และทำให้เราตระหนักถึงความจำเป็นในการวางแผนทั้งในระยะสั้นและระยะยาว "มันเป็นช่วงเวลาที่ต้องหยุดทุกอย่างทันที" รอสส์กล่าว "สิ่งเดียวที่เราควรคิดถึงจนกว่าเราจะสามารถรับประกันกับทุกคนที่ Roblox ได้ว่ามันจะไม่เกิดขึ้นอีก"

ต้นทุนการให้บริการ (ประสิทธิภาพ)
ในปัจจุบัน บริษัทเทคโนโลยีมักไม่สร้างโครงสร้างพื้นฐานคลาวด์ของตนเอง เนื่องจากผู้ให้บริการคลาวด์สาธารณะมีเครื่องมือที่จำเป็น เช่น การจัดการเครือข่าย การจัดการกลุ่มระบบ และอื่น ๆ
แต่ในขนาดของเราและด้วยลักษณะการกระจายอำนาจของเรา การรักษาคลาวด์ส่วนตัวไว้จึงคุ้มค่ากว่าสำหรับเรา เราอยู่ในระหว่างการระบุและเอาชนะความท้าทายที่เกิดขึ้นจากการรักษาระบบซับซ้อนเช่นนี้ไว้ด้วยตัวเองอยู่เสมอ
เพื่อให้แน่ใจว่าเราสามารถประหยัดค่าใช้จ่ายได้ตามที่ต้องการ เราจำเป็นต้องพิจารณาอย่างรอบคอบในการออกแบบระบบ ระบบคลาวด์ส่วนตัวระดับโลกของเราต้องการความใส่ใจในประสิทธิภาพอย่างใกล้ชิด เพื่อที่เราจะสามารถลงทุนเพิ่มเติมในการสนับสนุนชุมชนผู้สร้างและผู้ใช้งานของเราได้
เรากำลังมุ่งมั่นที่จะทำให้วิศวกรผลิตภัณฑ์สามารถสร้างฟีเจอร์ที่สามารถทำงานได้อย่างมีประสิทธิภาพในระดับใหญ่ได้อย่างง่ายดาย ในขณะเดียวกัน เรากำลังคิดค้นเครื่องมือการผลิตที่มีประสิทธิภาพสูงซึ่งช่วยให้ทีมงานขนาดเล็กสามารถจัดการโครงสร้างพื้นฐานขนาดใหญ่ได้ "คนที่อยู่นอกทีมโครงสร้างพื้นฐานอาจไม่ทราบเสมอไป" ไมเคิล วูล์ฟ ผู้อำนวยการฝ่ายเทคนิคกล่าว "ว่าเรากำลังเปลี่ยนแปลงโครงสร้างพื้นฐานของเราเกือบทุกส่วนอย่างสิ้นเชิง"
นั่นหมายถึงการพัฒนาจากโครงสร้างแบบ bare-metal ไปสู่สถาปัตยกรรมที่ใช้ Linux เป็นพื้นฐาน บรรจุในคอนเทนเนอร์ และมีระบบควบคุมร่วมกันทั้งในศูนย์ข้อมูลหลักและศูนย์ข้อมูลขอบเครือข่าย ผลลัพธ์คือ วิศวกรของ Roblox จะสามารถใช้คลังเครื่องมือซอฟต์แวร์โอเพนซอร์สขนาดใหญ่ใหม่ได้ และจะสามารถรันงานหลายอย่างพร้อมกันบนเครื่องเดียวกันได้ง่ายขึ้น
"เราไม่กลัวที่จะเผชิญกับความท้าทายใหญ่ ๆ" กล่าวโดยแอนดี้ วิลค็อกซ์ ผู้อำนวยการเทคนิค ซึ่งกล่าวถึงการเปลี่ยนผ่านของอินฟราไปสู่ระบบเทเลเมตริ, คอมพิวต์, และระบบPLOYเมนต์ใหม่ ๆ ที่เพิ่งเกิดขึ้น "สิ่งเหล่านี้คือรากฐานที่เราสามารถรับมือได้ในฐานะองค์กรวิศวกรรมที่มีความต้องการที่จะรับมือกับมัน"
มันจะไม่เกิดขึ้นในชั่วข้ามคืน มันจะใช้เวลาหลายปี เพราะเราไม่สามารถรีบูต Roblox ได้—เครื่องจักรของเราต้องทำงานต่อเนื่องตลอดเวลา นั่นหมายถึงกระบวนการที่ต้องทำด้วยมือในการเขียนซอฟต์แวร์ใหม่และปรับตัวให้เข้ากับเครื่องมือใหม่ๆ "มันเหมือนกับการเปลี่ยนยางรถยนต์" วูล์ฟกล่าว "ในขณะที่คุณกำลังขับรถอยู่บนทางหลวง"
ประสิทธิภาพในการทำงาน
ทุกวัน ทีมวิศวกรของเราสามารถแก้ไขปัญหาใหญ่ ๆ ได้อย่างมีประสิทธิภาพในระดับที่ใหญ่โต และดึงศักยภาพสูงสุดจากระบบของเราออกมาได้มากที่สุดเท่าที่จะทำได้
สำหรับเรื่องนี้ เราทำการรวบรวมข้อมูลเชิงปริมาณและเชิงคุณภาพเกี่ยวกับประสิทธิภาพการทำงานของวิศวกรของเราอย่างสม่ำเสมอ ซึ่งช่วยให้เราสามารถระบุจุดที่เป็นคอขวดซึ่งสามารถปรับปรุงได้ด้วยโซลูชันจากบุคคลที่สามหรือเครื่องมือที่พัฒนาขึ้นเฉพาะของเราเอง
ตัวอย่างหนึ่งคือแดชบอร์ดที่เราเปิดตัวในเดือนมีนาคมเพื่อแก้ไขปัญหาที่วิศวกรประสบในกระบวนการตรวจสอบโค้ดของเรา เครื่องมือนี้ช่วยให้วิศวกรติดตาม PR ที่ต้องการการตรวจสอบตามเกณฑ์ต่างๆ ที่เรากำหนดไว้ นอกจากนี้ยังรวมงานตรวจสอบโค้ดและอนุญาตให้กำหนดเวลาการแจ้งเตือนได้ นับตั้งแต่มีการนำแดชบอร์ดนี้มาใช้อย่างแพร่หลาย เวลาในการรวม PR ที่อยู่ในระดับ P75 ลดลง 30 เปอร์เซ็นต์
และแน่นอน คุณสมบัติด้านประสิทธิภาพทางวิศวกรรมที่สำคัญที่สุดคือโครงสร้างพื้นฐานที่เสถียรและสามารถขยายได้เพื่อสร้างต่อยอด ดังนั้นเราจึงลงทุนในระยะยาวในระบบระดับต่ำของเราอยู่เสมอ
สิ่งนี้สะท้อนถึงค่านิยมหลักสองประการของ Roblox: การมองการณ์ไกลและการทำงานให้สำเร็จลุล่วง ในฐานะกลุ่มโครงสร้างพื้นฐานที่มุ่งเน้นลูกค้า เราปฏิบัติอย่างจริงจังในการทำให้ลูกค้าของเราประสบความสำเร็จและมีประสิทธิภาพมากขึ้น หากพวกเขาต้องการสิ่งที่เราไม่ได้ให้บริการในฐานะบริการที่มีการจัดการ เราสามารถพิจารณาการผสานรวมโซลูชันจากผู้ให้บริการภายนอกเข้ากับเครื่องมือภายในของเราในคลาวด์ส่วนตัวของเราได้

แต่ในขณะที่การแก้ปัญหาในระยะสั้นเพื่อ "รักษาการดำเนินงานให้ดำเนินต่อไป" อาจดูน่าดึงดูดใจบ่อยครั้ง แต่ก็จำเป็นต้องสมดุลกับการวิศวกรรมที่มองไปข้างหน้า
รางวัลคือการเพิ่มผลผลิตให้สูงสุดเป็นประโยชน์ต่อบริษัทในขณะที่ช่วยให้เราสามารถทำโครงการให้เสร็จตามเป้าหมายทางธุรกิจได้
วัฒนธรรมที่ส่งเสริมการสำรวจ
เมื่อเรามุ่งมั่นที่จะเชื่อมต่อผู้คนหนึ่งพันล้านคนด้วยความสุภาพและปลอดภัย จะมีความท้าทายทางเทคนิคที่สำคัญอยู่เสมอที่ต้องแก้ไข เราได้แก้ไขปัญหาหลายอย่างและเรียนรู้มากมายแล้ว แต่เป้าหมายของเรายังคงอยู่ที่การสร้างโครงสร้างพื้นฐานที่สามารถขยายได้มากขึ้นในขณะที่พยายามลดความซับซ้อนของระบบของเรา
เป้าหมายที่ขัดแย้งกันเหล่านี้จะนำเสนอบทเรียนใหม่ๆ มากมาย สำหรับปีต่อๆ ไป โดยเฉพาะอย่างยิ่งเมื่อเราต้องรับมือกับปริมาณงาน AI ที่เพิ่มมากขึ้น และเรารู้อย่างแน่นอนว่าการบรรลุเป้าหมายของเราหมายความว่า ระบบของ Infra จำเป็นต้องพัฒนาอย่างมีนัยสำคัญตลอดเวลา
สำหรับวิศวกรโครงสร้างพื้นฐาน ทุกโครงการคือจุดเปลี่ยนที่มีศักยภาพสำหรับบริษัท และงานของทุกคนล้วนมีความสำคัญ "โครงสร้างพื้นฐานคือองค์กรที่ทุกคนสามารถสร้างผลงานที่ยอดเยี่ยมและมีคุณค่าต่อ Roblox และผู้ใช้ของเราได้จริง ๆ" วูล์ฟกล่าว "และที่นี่ไม่มีอะไรที่เป็นเรื่องต้องห้าม"
แนวคิดที่มุ่งเน้นลูกค้าเป็นศูนย์กลาง
ในที่สุด งานของเราคือการช่วยเหลือวิศวกร Roblox คนอื่น ๆ ให้มีประสิทธิภาพมากขึ้น ทั้งในวันนี้และอนาคต โดยมีภารกิจในการเรียนรู้บทเรียนอย่างรวดเร็ว และนำเสนอโซลูชันที่ได้จากบทเรียนเหล่านั้น
เรากำลังเผชิญกับความท้าทายนี้อย่างตรงไปตรงมา "ผมต้องการให้แน่ใจว่าเรากำลังส่งมอบคุณค่าให้กับ Roblox ในวันนี้ ไตรมาสนี้ และปีนี้" รอสกล่าว "ผมยังต้องการให้แน่ใจว่าเรากำลังสร้างรากฐานที่จะทำให้เราอยู่ในจุดที่ดีสำหรับอีก 5 ถึง 10 ปีข้างหน้า"
ณ วันที่ 3 เดือนสิ้นสุดวันที่ 31 มีนาคม 2567


