แม้ว่าการหยุดทำงานเป็นระยะเวลานาน, ที่ฟอร์ทไนท์จำนวนผู้เล่นเพิ่มขึ้นอย่างต่อเนื่องโดยมีผู้เล่นพร้อมกันมากกว่า 3.4 ล้านคนในช่วงวันเสาร์ที่ผ่านมา (ใช่ นั่นเป็นสุดสัปดาห์เดียวกับที่เกมกำลังประสบปัญหา!)
Fortnite มีผู้เล่นพร้อมกันถึง 3.4 ล้านคนเมื่อวันอาทิตย์ที่ผ่านมา… และนั่นไม่ได้มาโดยไม่มีปัญหา! โพสต์ในบล็อกนี้มีจุดมุ่งหมายเพื่อแบ่งปันรายละเอียดทางเทคนิคเกี่ยวกับความท้าทายในการปรับขนาดเกมอย่างรวดเร็วและบริการออนไลน์ที่เกินกว่าความคาดหมายการเติบโตสูงสุดของเรา
Epic Games แบ่งปันสถิติใหม่ที่น่าสนใจนี้ในบล็อกโพสต์ใหม่ นอกเหนือจากการอวดอ้างว่าเกมประสบความสำเร็จเพียงใดแล้ว ผู้พัฒนายังจัดให้มี "การชันสูตรพลิกศพ" ของการหยุดให้บริการในวันเสาร์และวันอาทิตย์อีกด้วย
รายงานเกี่ยวกับสิ่งที่ผิดพลาดนั้นมีรายละเอียดที่น่าเหลือเชื่อ หากต้องการอ่านฉบับเต็มก็สามารถทำได้ที่นี่- อย่างไรก็ตาม สำหรับบทความนี้ ฉันจะนำเสนอเฉพาะไฮไลต์และการแก้ไขที่วางแผนไว้เท่านั้น
ภาระงานที่รุนแรงทำให้เกิดเหตุการณ์ที่แตกต่างกัน 6 เหตุการณ์ระหว่างวันเสาร์และวันอาทิตย์ โดยมีการหยุดชะงักของบริการ Fortnite บางส่วนและทั้งหมดผสมกัน
ขั้นตอนต่อไปและการอัปเดต
เป้าหมายสูงสุดของเราในตอนนี้คือการรับประกันความพร้อมในการให้บริการ ขั้นตอนต่อไปของเรามีดังต่อไปนี้:
- ระบุและแก้ไขสาเหตุที่แท้จริงของปัญหาประสิทธิภาพ DB ของเรา เราได้ส่งผู้เชี่ยวชาญ Mongo มาที่ไซต์งานเพื่อวิเคราะห์ฐานข้อมูลและการใช้งานของเรา พร้อมทั้งให้การสนับสนุนแบบเรียลไทม์ในช่วงที่มีภาระงานหนักในช่วงสุดสัปดาห์
- ปรับให้เหมาะสม ลด และกำจัดการเรียกที่ไม่จำเป็นทั้งหมดไปยังแบ็คเอนด์จากไคลเอนต์หรือเซิร์ฟเวอร์ ตัวอย่างบางส่วนกำลังตรวจสอบสิทธิ์ของผู้ใช้เป็นระยะๆ เมื่อสิ่งนี้เกิดขึ้นโดยปริยายกับการเรียกใช้บริการเกมแต่ละครั้ง การลงทะเบียนและยกเลิกการลงทะเบียนผู้เล่นแต่ละคนในเซสชั่นการเล่นเกมเมื่อการโทรเหล่านี้สามารถทำได้อย่างมีประสิทธิภาพมากขึ้นเป็นกลุ่ม การเลื่อนการเชื่อมต่อ XMPP ออกไปเพื่อหลีกเลี่ยงการฟาดฟันระหว่างสถานการณ์การเข้าสู่ระบบ/ออกจากระบบ คุณสมบัติโซเชียลฟื้นตัวอย่างรวดเร็วจาก ELB หรือปัญหาการเชื่อมต่ออื่น ๆ เมื่อมีลูกค้าเชื่อมต่อถึง 3.4 ล้านรายในเวลาเดียวกัน ความไร้ประสิทธิภาพเหล่านี้ก็จะเพิ่มขึ้นอย่างรวดเร็ว
- เพิ่มประสิทธิภาพวิธีการจัดเก็บข้อมูลเซสชั่นการค้นหาแมตช์ในฐานข้อมูลของเรา แม้ว่าจะไม่มีสาเหตุที่แท้จริงของปัญหาคิวการเขียนในปัจจุบัน เราก็สามารถปรับปรุงประสิทธิภาพได้โดยการเปลี่ยนวิธีการจัดเก็บข้อมูลชั่วคราวนี้ เรากำลังสร้างต้นแบบโซลูชันฐานข้อมูลในหน่วยความจำที่อาจเหมาะสมกับกรณีการใช้งานนี้มากกว่า และดูว่าเราจะปรับโครงสร้างข้อมูลปัจจุบันของเราใหม่เพื่อให้สามารถแบ่งส่วนได้อย่างถูกต้องได้อย่างไร
- ปรับปรุงการมุ่งเน้นความเป็นเลิศในการดำเนินงานภายในของเราในกระบวนการการผลิตและการพัฒนาของเรา ซึ่งรวมถึงการสร้างเครื่องมือใหม่เพื่อเปรียบเทียบรูปแบบการเรียก API ระหว่างบิวด์ การตั้งค่าการตรวจสอบประสิทธิภาพรายสัปดาห์ที่มุ่งเน้น การขยายระบบการตรวจสอบและแจ้งเตือนของเรา และปรับปรุงกระบวนการหลังชันสูตรของเราอย่างต่อเนื่อง
- ปรับปรุงการแจ้งเตือนและการตรวจสอบขีดจำกัดของผู้ให้บริการคลาวด์ที่ทราบ และการใช้งาน IP ของซับเน็ต
- ลดรัศมีการระเบิดระหว่างเหตุการณ์ บริการหลักจำนวนหนึ่งของเราส่งผลกระทบทั่วโลกต่อผู้เล่นทุกคน ในขณะที่เราดำเนินงานเซิร์ฟเวอร์เกมทั่วโลก การขยายไปยังผู้ให้บริการคลาวด์เพิ่มเติมและการสนับสนุนบริการหลักในที่ตั้งทางภูมิศาสตร์หลายแห่งจะช่วยลดผลกระทบของผู้เล่นเมื่อบริการล้มเหลว การขยายขอบเขตของเรายังเพิ่มค่าใช้จ่ายในการดำเนินงานและความซับซ้อนอีกด้วย หากคุณมีประสบการณ์ในการใช้บริการคลาวด์หลายระบบขนาดใหญ่ทั่วโลก และ/หรือโครงสร้างพื้นฐาน เรายินดีรับฟังจากคุณ
- ปรับโครงสร้างสแต็กการส่งข้อความหลักของเราใหม่ สแต็กของเราไม่ได้ออกแบบมาให้รองรับขนาดนี้ และเราจำเป็นต้องดูการเปลี่ยนแปลงที่ใหญ่กว่าในสถาปัตยกรรมของเราเพื่อรองรับการเติบโตของเรา
- เจาะลึกข้อมูลและพื้นที่จัดเก็บ DB ของเรา เราถึงขีดจำกัดใหม่และน่าสนใจเมื่อบริการของเราเติบโตขึ้น ชุดข้อมูลและรูปแบบการใช้งานของเราก็ใหญ่ขึ้นเรื่อยๆ ทุกวัน เรากำลังมองหา DBA ที่มีประสบการณ์เพื่อเข้าร่วมทีมของเรา และช่วยเราแก้ปัญหาคอขวดในการขยายขนาดที่เราพบเมื่อเกมของเราเติบโตขึ้น
- ปรับขนาดโครงสร้างพื้นฐานภายในของเรา เมื่อบริการเกมของเรามีขนาดใหญ่ขึ้น การตรวจสอบภายใน การวัดผล และการบันทึกก็ทำควบคู่ไปกับความต้องการภายในอื่นๆ ด้วย เนื่องจากรอยเท้าของเราขยายความต้องการของเราสำหรับการปรับใช้ขั้นสูง เครื่องมือการกำหนดค่าและโครงสร้างพื้นฐานก็เพิ่มขึ้นเช่นกัน หากคุณมีประสบการณ์ในการปรับขนาดและปรับปรุงระบบภายใน และสนใจในสิ่งที่เกิดขึ้นที่ Epic มาพูดคุยกันได้เลย
- ประสิทธิภาพในระดับหนึ่ง นอกเหนือจากหลายๆ สิ่งที่กล่าวมา แม้แต่การเปลี่ยนแปลงประสิทธิภาพเล็กน้อยบนโหนด N ก็ส่งผลกระทบอย่างมากต่อบริการและประสบการณ์ของผู้เล่นของเรา หากคุณมีประสบการณ์ในการปรับแต่งประสิทธิภาพในวงกว้างและต้องการปรับปรุงที่ส่งผลกระทบโดยตรงต่อผู้เล่น โปรดติดต่อเรา
- สถาปัตยกรรมใหม่ของ MCP – ย้ายฟังก์ชันการทำงานเฉพาะออกจาก MCP ไปยังไมโครเซอร์วิส – แบบจำลองข้อมูลการจัดหากิจกรรมสำหรับข้อมูลผู้ใช้ – การสร้างแบบจำลองเซสชันผู้ใช้ตามผู้แสดง
หวังว่าสุดสัปดาห์นี้จะราบรื่นขึ้นอีกหน่อย!
ในด้านอื่นๆฟอร์ทไนท์ข่าว Epic Games กำลังชะลอตัวลงการพัฒนาของพารากอนที่จะมุ่งเน้นไปที่ฟอร์ทไนท์นี่คือล่าสุดการแสดงสถิติชุมชนและดูที่การอัปเดตในอนาคตที่จะมาถึงเกม-
แหล่งที่มา:เกมมหากาพย์