Tags:
Node Thumbnail

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

วันนี้ข้อมูลเผยออกมาแล้ว ว่าเป็น Google Cloud Platform ตามที่หลายคนคาดกัน สิ่งที่น่าสนใจคือทราฟฟิกของ Pokemon Go สูงกว่าที่ทีมงานคาดการณ์ไว้ถึง 50 เท่าเลยทีเดียว

เรื่องนี้เปิดเผยโดยทีมงาน Google Cloud Platform ที่ประเมินกันว่าทราฟฟิกระดับ worst case น่าจะมากกว่าทราฟฟิกที่ประเมินไว้ราว 5 เท่า แต่เอาเข้าจริง ทราฟฟิกกลับทะลุความคาดหมายอย่างรวดเร็วภายในเวลาเพียง 15 นาทีหลังเปิดให้ดาวน์โหลดในออสเตรเลียและนิวซีแลนด์ และจบที่ทราฟฟิกจริงสูงกว่าที่คาดไว้ 50 เท่า

No Description

หน้าที่ในการดูแลโหลดระดับนี้เป็นของทีม Google Customer Reliability Engineering (CRE) ทีมใหม่ที่กูเกิลตั้งขึ้นมาเพื่อดูแลลูกค้ารายใหญ่โดยเฉพาะ และลูกค้ารายแรกก็คือ Niantic กับ Pokemon Go นั่นเอง

หลังจากเปิดให้ดาวน์โหลดและทราฟฟิกโตเกินเป้า ทีมงาน Niantic ก็โทรหาทีม Google CRE เพื่อขอความช่วยเหลือทันที เพราะตามแผนต้องเปิดเซิร์ฟเวอร์ให้ผู้เล่นในสหรัฐอเมริกาในวันต่อไป

ทางทีม CRE ก็ตอบรับโดยการเพิ่มขีดความสามารถของคลาวด์แบบเต็มที่ให้ Niantic เพื่อรองรับความต้องการ แต่อุปสรรคก็ยังไม่หมด เพราะตัวเกมมีปัญหาเสถียรภาพ ทั้งสองทีมจึงต้องทำงานร่วมกันเพื่อแก้ปัญหาไปทีละเปลาะ โดยทีม CRE เข้าไปช่วยรีวิวสถาปัตยกรรมของ Pokemon Go ตลอดเวลา

ระบบเบื้องหลัง Pokemon Go ได้แก่

  • Google Cloud Datastore ฐานข้อมูลแบบ NoSQL ไว้เก็บข้อมูลของผู้เล่น
  • ตัวลอจิกของเกม รันอยู่บน Google Container Engine (GKE) ที่ใช้ซอฟต์แวร์จากโครงการ Kubernetes บริการคลัสเตอร์ จุดที่น่าสนใจคือทีมงานต้องเปลี่ยนเวอร์ชันของ GKE กลางคันเพื่อให้รับโหลดได้มากขึ้น ซึ่งต้องระวังไม่ให้ผู้เล่นได้รับผลกระทบ
  • HTTP/S Load Balancer สำหรับกระจายโหลดไปยังเซิร์ฟเวอร์ต่างๆ ตัวนี้เป็นซอฟต์แวร์ใหม่ที่เขียนขึ้นมาแทน Network Load Balancer เดิมของกูเกิล

หลังจากเปิดบริการในสหรัฐแล้ว ทางทีม Niantic และ CRE ก็มีประสบการณ์มากพอ และการปรับระบบเซิร์ฟเวอร์ในช่วงแรก ทั้งการขยายขีดความสามารถคลาวด์ และการปรับมาใช้ GKE กับ HTTP/S Load Balancer เวอร์ชันใหม่ ช่วยให้ระบบสามารถรองรับการเปิดบริการในญี่ปุ่นได้อย่างราบรื่นไม่มีสะดุด

ทีมงาน Google Cloud บอกว่า Pokemon Go คือระบบที่ใช้ Kubernetes บน Google Container Engine ที่ใหญ่ที่สุดตั้งแต่เคยมีมา (ไม่บอกจำนวนที่แน่ชัด แต่บอกว่าเป็นหลัก "หลายหมื่นคอร์") ทีมงานแก้ไขโค้ดจำนวนมากเพื่อรองรับสเกลระดับนี้ และส่งโค้ดกลับไปยังโครงการโอเพนซอร์สแล้ว

ที่มา - Google Cloud Platform Blog

Get latest news from Blognone

Comments

By: darthvader
Windows PhoneWindows
on 30 September 2016 - 22:12 #943700
darthvader's picture

Cloud ค่ายอื่นอ่านแล้วคงอิจฉาได้ลองของจริง

By: animateex
iPhoneAndroidUbuntuWindows
on 30 September 2016 - 22:37 #943706
animateex's picture

ญีปุ่นวันแรกนี่เละสุดๆ พอขึ้นวันที่สองนี้ลื่นจนน่าตกใจ ถึงจะยังมีหลุดให้เห็นอยู่บ้างแต่ก็น้อยลงเยอะ

By: orbitalz
ContributorWindows PhoneAndroidUbuntu
on 3 October 2016 - 17:21 #944039 Reply to:943706

จริงครับ ญี่ปุ่นวันแรกนี่ล่มต่อเนื่องมาก

By: Patchan
iPhone
on 30 September 2016 - 22:44 #943709

ตอนนี้ล่ะ?

By: pruet
WriterAndroidRed HatUbuntu
on 30 September 2016 - 23:02 #943714
pruet's picture

ลืมใส่ที่มาหรือเปล่าครับ

By: mk
FounderAndroid
on 1 October 2016 - 08:46 #943735 Reply to:943714
mk's picture

เพิ่มละครับ

By: readonly
iPhone
on 1 October 2016 - 06:16 #943728
readonly's picture

ตอนนี้คงไม่ต้องรับภาระหนักขนาดนั้นแล้วสินะ. //เลิกเล่นกันไปเยอะมาก

By: kengeng
iPhoneAndroidWindows
on 1 October 2016 - 10:03 #943741

ความสำคัญของการลงทุน Infrastructure เห็นประโยชน์ก็ตอนนี้ 5เท่า-> 50เท่า ถ้าไม่ใช่อเมริกาคงทำได้ยาก สมมติไทยสร้างเกมส์ที่ฮิตมาก คนมาเล่นจากทั่วโลก ตกม้าตายเพราะ Infrastructure ไม่รองรับ
คล้ายกับกรณี Facebook ตอนเริ่มต้น ถ้าบริษัทมาเกิดแถวนี้คงไม่ไปถึงไหน เพราะช้ามาก

บางครั้งการลงทุนบางอย่างดูไม่คุ้มค่าเลย แต่มันเกิดผลลัพท์ทางอ้อม

By: blackdemon
Windows PhoneAndroid
on 1 October 2016 - 12:55 #943758 Reply to:943741
blackdemon's picture

เกี่ยวยังไง คนไทยสร้างเกมก็ใช้ AWS, Cloud Engine ได้หนิ

By: -Rookies-
ContributorAndroidWindowsIn Love
on 2 October 2016 - 07:35 #943853 Reply to:943758

ถ้าตามข่าวนี้ก็มี "ทีมพิเศษที่ช่วยดูแลลูกค้าพิเศษ" ช่วยรีวิวโค้ดให้เลยนะครับ ถ้าตัวอย่างที่ยกมาประสบความสำเร็จใกล้เคียงระดับนี้นะครับ


เทคโนโลยีไม่ผิด คนใช้มันในทางที่ผิดนั่นแหละที่ผิด!?!

By: blackdemon
Windows PhoneAndroid
on 2 October 2016 - 13:21 #943899 Reply to:943853
blackdemon's picture

ถ้าพูดขนาดนี้ ผมยกมั่งว่าในไทยคงไม่มีใครทำเกมที่มีมูลค่าการลงทุนเท่ากับ Pokemon Inc. หรอก (ได้ข่าวว่าหลักร้อยล้านนะครับ) และถ้ามีเงินขนาดนั้นผมก็เชื่อว่าเค้าคงมี "ทีมพิเศษ" ให้เหมือนกันล่ะครับ

By: -Rookies-
ContributorAndroidWindowsIn Love
on 2 October 2016 - 23:34 #943931 Reply to:943899

ตามสบายเลยครับ ผมไม่ได้เป็นคนเริ่ม ผมแค่อธิบายให้ฟังเฉย ๆ ว่าเขาน่าจะคิดแบบนั้น


เทคโนโลยีไม่ผิด คนใช้มันในทางที่ผิดนั่นแหละที่ผิด!?!

By: ปลงนะเรา
Android
on 1 October 2016 - 10:51 #943745

ขอบคุณสำหรับบทความครับ อยากรู้นานแล้วว่าเค้าใช้ตัวไหนดก็บ DB ผู้เล่นหว่า แค่ผู้เล่นรายเดียวนี้ เฉพาพผมนาทีหนึ่งผมกดนู้นนี่นั่นเยอะมากกกกกกก

By: adente
ContributorSUSESymbianWindows
on 1 October 2016 - 21:06 #943806
adente's picture

วันเปิดตัวสำหรับทีมงานคง coffee X50 เช่นกัน