• BBC ได้สร้างแพลตฟอร์มที่ใช้ Serverless ชื่อ 'WebCore' ระหว่างการย้ายขึ้นสู่คลาวด์
  • ตลอด 1 ปีที่ผ่านมา แม้จะบรรลุเป้าหมายสุดท้ายได้เพียงราว 30% แต่ก็เริ่มเห็นผลลัพธ์แล้ว
  • การใช้ Serverless ทำให้สามารถโฟกัสกับคุณค่าที่มอบให้ลูกค้าได้ มากกว่าต้องใช้เวลากับการวิศวกรรมโครงสร้างพื้นฐานของแพลตฟอร์ม
  • BBC เพิ่มความมั่นคงและประสิทธิภาพสูงสุดมาโดยตลอดด้วยการแคช แต่เพื่อให้สอดคล้องกับแนวโน้มปัจจุบันที่ต้องส่งมอบคอนเทนต์แบบปรับตามแต่ละผู้อ่าน จึงจำเป็นต้องเปลี่ยนแปลงมากขึ้นและรองรับโหลดที่สูงขึ้น

Personalisation / Relevancy

  • กำลังพัฒนาให้รองรับหน้าเพจที่ปรับให้เหมาะกับผู้อ่านแต่ละคน
  • สำหรับหน้าแรก ปัจจุบันมีการปรับแต่งเฉพาะบุคคลแล้ว ใช้เวลาเรนเดอร์ราว 500ms และระหว่างนั้นมีการเรียกฟังก์ชันประมาณ 30 ตัว
  • ในเดือนกุมภาพันธ์ 2022 มีการเรียกใช้งานแบบปรับแต่งเฉพาะบุคคล 145 ล้านครั้ง คิดเป็น 6% ของทราฟฟิก WebCore ทั้งหมด
  • ในอีก 12 เดือนข้างหน้า จะทำให้หน้าเพจส่วนใหญ่ปรับให้เหมาะกับผู้อ่านแต่ละคน

Experimentation

  • บนแพลตฟอร์มเดิมที่พึ่งพาการแคช ทำให้ทำการทดลองหลากหลายรูปแบบบนหน้าเพจได้ยาก
  • กำลังพัฒนาให้สามารถทำการทดลองหลากหลายรูปแบบด้วย A/B/n testing ได้

Speed of Updates

  • ในวันทำงาน หมวดข่าวและกีฬาของ BBC ถูกแก้ไขโดยบรรณาธิการ 3 ครั้งต่อวินาที (บทความ, ดัชนี, วิดีโอ, โพสต์สั้น ฯลฯ)
  • หน้าเพจที่ไม่ได้ปรับแต่งเฉพาะบุคคลต้องการสะท้อนคอนเทนต์ใหม่ให้เร็วที่สุด แต่ทำได้ยากเพราะแคช
  • BBC กำลังปรับปรุงเวลาที่บทความใหม่จะปรากฏต่อผู้ใช้ผ่าน Serverless Redis อย่างต่อเนื่อง
  • ตลอด 8 เดือนที่ผ่านมา ลดเวลาจาก 2.5 นาทีเหลือ 30 วินาที และตั้งเป้าลดให้ต่ำกว่า 5 วินาทีในอีก 12 เดือนข้างหน้า

Build times

  • เพื่อให้ทีมเทคนิค deploy ได้รวดเร็วและปลอดภัย จึงเลิกใช้ CI/CD pipeline แบบเดิม
  • เปลี่ยนจาก Jenkins-based ไปเป็น Serverless CI/CD pipeline
  • เวลาบิลด์ลดลงจากเดิม 24 นาที เหลือปัจจุบัน 5 นาที และมีเป้าหมายที่ 2 นาที

ปัญหาเล็กน้อย

  • ปัญหา noisy neighbor: เนื่องจากแพลตฟอร์ม Serverless บนคลาวด์ใช้ทรัพยากรร่วมกัน จึงอาจมีบางครั้งที่เกิดอาการช้าลง

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น