• เมื่อสัดส่วนการใช้งาน เบราว์เซอร์ที่อิงเทคโนโลยี Chromium (Chromium) เพิ่มสูงขึ้นทั่วโลก ความกังวลเรื่องความหลากหลายของมาตรฐานเว็บและ อนาคตของเว็บเปิด (Open Web) จึงขยายตัวมากขึ้น
  • เอนจิ้น Servo ที่พัฒนาด้วย Rust มีจุดเด่นสองด้านคือประสิทธิภาพมัลติเธรดและความปลอดภัยของหน่วยความจำ และถูกมองว่าเป็นทางเลือกใหม่ที่สำคัญในวงการเอนจิ้นเรนเดอร์เว็บ
  • เนื่องจากยังอยู่ในระยะเริ่มต้น จึงยังมี บั๊กการเรนเดอร์ ในเว็บไซต์ส่วนใหญ่ แต่บางหน้าที่เป็นเดโมหรือไซต์ที่โครงสร้างง่าย ๆ เช่น Wikipedia สามารถทำงานได้ตามปกติ
  • โปรเจกต์ Servo เริ่มต้นมาจากการนำโดย Mozilla ในอดีต แต่ขณะนี้อยู่ภายใต้การจัดการของ Linux Foundation Europe และมีโครงสร้างการตัดสินใจเชิงชุมชนที่เน้นความเป็นอิสระทางเทคโนโลยี
  • ในกระแสการผสมกลมการตลาดเอนจิ้นเว็บแบบเดี่ยว การพัฒนา Gecko, Servo และ เอนจิ้นทางเลือก อย่างต่อเนื่องจึงมีความสำคัญต่อการรักษาความหลากหลายของระบบนิเวศเว็บ

การผูกขาดของเอนจิ้นเว็บและความเสี่ยง

  • ในช่วงทศวรรษ 1990 ถึงต้นทศวรรษ 2000 มีเอนจิ้นเบราว์เซอร์หลายตัวใช้งานร่วมกัน เช่น Trident ของ Internet Explorer, Presto ของ Opera, Gecko ของ Netscape และ KHTML ของ Konqueror
  • เมื่อเวลาผ่านไป KHTML ถูกพัฒนาเป็น WebKit และทั้ง Presto และ Trident (รวมถึง Tasman) ก็กลายมาเป็น Blink (เอนจิ้นของ Chromium)
  • เมื่อ เบราว์เซอร์หลักสมัยใหม่ (Chrome, Edge, Opera ฯลฯ) กลายเป็น Chromium/Blink เป็นหลัก เกิดภาวะที่การใช้งานเอนจิ้นเฉพาะเริ่มกลายเป็นมาตรฐานเดียวที่อิงตามการใช้งานจริง
  • ความเสี่ยงด้านความปลอดภัย ช่องโหว่ และข้อจำกัดในการขยายระบบยิ่งเด่นชัดขึ้นเมื่อระบบนิเวศเว็บต้องอาศัยเอนจิ้นเพียงตัวเดียว

การเกิดขึ้นของเอนจิ้น Servo

  • Servo คือเอนจิ้นเรนเดอร์เว็บที่พัฒนาจากศูนย์ด้วยภาษา Rust
  • โดยอาศัยข้อดีของ Rust อย่าง การประมวลผลแบบมัลติเธรด และ ความปลอดภัยหน่วยความจำ โครงการนี้พยายามลดข้อบกพร่องโครงสร้างของเอนจิ้นเดิมที่พัฒนาโดย C/C++ (เช่น บั๊กหน่วยความจำ) อย่างเป็นระบบ
  • เป้าหมายหลักของ Servo คือการเป็น เอนจิ้นเรนเดอร์เว็บแบบฝังตัว จึงมีโอกาสถูกใช้แทนที่ไม่เฉพาะในเบราว์เซอร์อิสระ แต่รวมถึง Electron หรือ Android WebView ได้ด้วย
  • การกำหนดทิศทางทางเทคนิคภายใต้ Linux Foundation Europe ดำเนินการโดยคณะกรรมการเทคนิค แทนการควบคุมจากบริษัทยักษ์ใหญ่
  • เป็นเอนจิ้นเบราว์เซอร์แบบใหม่ตัวแรกในช่วงเวลาเกือบ 10 ปี โดยยังคงเอาบทเรียนจากเอนจิ้นหลักเข้ามาเสริมเพื่อยกระดับความสมบูรณ์แบบ

ประสบการณ์การใช้งานและสถานะปัจจุบันของ Servo

  • สามารถทดลองใช้ Servo ได้จาก nightly build ที่เผยแพร่ทางเว็บไซต์ทางการสำหรับ Windows, macOS, Android และ Linux
  • ขณะนี้ยังไม่รองรับฟังก์ชันพื้นฐานบางอย่าง เช่น ที่คั่นหน้า (bookmark), ส่วนเสริม, การซิงค์ข้อมูล
  • ส่วนใหญ่อันดับผู้ใช้พบว่ามี บั๊กการเรนเดอร์ เกิดขึ้น และการค้นหาของ Google หรือบางเว็บไซต์มีปัญหาตกแต่งเลย์เอาต์ผิดเพี้ยนหรือเกิดการ crash
  • หน้าเว็บลักษณะง่าย ๆ อย่าง Wikipedia, CNN Lite ทำงานได้อย่างถูกต้อง
  • หน้าดีโมของ Servo ช่วยสาธิตความสามารถด้านกราฟิกได้ และในการทดสอบ Particle Physics บน MacBook Pro ล่าสุด (จำลอง x86) ให้ผลที่ 55~60 FPS
  • การทดสอบ Acid3 ได้คะแนน 83/100 ต่ำกว่าค่าโดยเฉลี่ยของเบราว์เซอร์หลักที่อยู่ระดับประมาณ 95
  • วางแผนรองรับมาตรฐานเว็บสำคัญอย่าง Shadow DOM, CSS Grid ใน roadmap โดยเน้นปรับปรุงความเข้ากันได้กับเว็บ

ประวัติและจุดเปลี่ยนสำคัญของ Servo

  • Servo เริ่มต้นในปี 2012 ที่ Mozilla และในปี 2013 Samsung เข้าร่วมพัฒนาร่วมด้วย
  • เป้าหมายเดิมคือการนำมาแทนที่เอนจิ้น Gecko หลังจากเสถียรภาพ แต่สุดท้ายปรับกลยุทธ์สู่แนวทางค่อย ๆ แทนที่องค์ประกอบของ Gecko ด้วยโค้ดของ Servo อย่างค่อยเป็นค่อยไป
  • การอัปเดต Firefox 57 (Quantum) แสดงให้เห็นการแทนที่เอนจิ้น CSS (Quantum CSS, Stylo) ด้วยโค้ด Servo ส่งผลให้การทำงานดีขึ้นอย่างเด่นชัดในแง่ประสิทธิภาพและความมีประสิทธิภาพหน่วยความจำ
  • หลังการ ลดโครงสร้างองค์กรขนาดใหญ่ของ Mozilla ในปี 2020 ที่รวมถึงการย้ายทีม Servo ออกจากองค์กร ต่อมามีการโอนทีมไปสู่ Linux Foundation, การฟื้นฟูการสนับสนุนด้านงบประมาณ และยังคงพัฒนาแบบชุมชนต่อด้วยการหนุนหลังจากบริษัทโอเพ่นซอร์สอย่าง Igalia

ความเป็นไปได้ในอนาคตของระบบนิเวศเบราว์เซอร์

  • เมื่อกระทรวงยุติธรรมสหรัฐฯ ชนะคดีฟ้อง Google เรื่องสถานะการผูกขาด (Chrome, Android) ทำให้เกิดการหารือเรื่องการขาย Chrome และการห้ามทำข้อตกลงการค้นหากับเบราว์เซอร์รายอื่น
  • Mozilla มีความเสี่ยงสูงเพราะรายได้จำนวนมากของ Firefox พึ่งพาการจัดวางระบบค้นหาพื้นฐาน (สำคัญต่อการรักษา Gecko) จึงแสดงความไม่เห็นด้วยอย่างชัดเจน
  • หาก Mozilla สูญเสียรายได้จาก Google อาจมีแนวโน้มแปลงโหมดไปใช้ WebKit หรือ Chromium/Blink เพื่อลดต้นทุนการพัฒนา Firefox
  • หากเกิดกรณีดังกล่าว อาจเห็นได้ทั้งการเกิดเวอร์ชันดัดแปลงและบริหารโดยชุมชนจากโค้ด Gecko หรือการค่อย ๆ เสื่อมถอยของ Gecko
  • การคงอยู่ของ Servo และ Gecko รวมถึงเอนจิ้นทางเลือกอื่น กลับมาเป็นประเด็นสำคัญอีกครั้งในการรักษาความสมดุลและความหลากหลายของแพลตฟอร์มเว็บ

บทสรุปและข้อสังเกต

  • แม้ยังมีแนวโน้มการรวมศูนย์ของเอนจิ้นเบราว์เซอร์หลัก การมาของ ทางเลือกที่สร้างสรรค์อย่าง Servo ก็มีบทบาทสำคัญในการคงความหลากหลายและสุขภาพโดยรวมของระบบนิเวศเว็บ
  • แม้โอกาสจะไม่สามารถเป็นเบราว์เซอร์ใช้งานจริงได้ในระยะสั้น แต่ยังคงมีการทดลองทางเทคนิคและการพัฒนาที่ต่อเนื่องอยู่
  • มีความคาดหวังสูงต่อเส้นทางพัฒนาของ Servo ในอนาคตและผลกระทบที่อาจเกิดขึ้นในอุตสาหกรรม

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

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