Tags:
Node Thumbnail

Bun รันไทม์จาวาสคริปต์ออกเวอร์ชั่น 0.7 โดยตัว Bun นั้นมีทั้ง runtime, bundler, transpiler, และ package manager โดยชูจุดแข็งที่ประสิทธิภาพดีกว่า NodeJS มาก ในเวอร์ชั่นล่าสุดก็หันมาปรับปรุงการทำงานร่วมกับโค้ด NodeJS เดิมพร้อมกับเพิ่มโหมดประหยัดแรม

เนื่องจาก API ของ Bun ยังไม่เท่ากับ NodeJS ทำให้ไม่สามารถรันเฟรมเวิร์คยอดนิยมหลายตัวบน Bun ในเวอร์ชั่นนี้ก็รองรับ Vite เพิ่มเข้ามาในระดับทดลอง สำหรับ API ที่เพิ่มเข้ามา เช่น Worker สำหรับการรันโค้ดแยกออกจาก main thread เพื่อเตรียมรองรับ API worker_threads ของ NodeJS, หรือ AsyncLocalStorage ที่เป็น API จำเป็นสำหรับ NextJS

แม้ว่าจะเน้นเรื่องประสิทธิภาพ แต่ในเวอร์ชั่นนี้ Bun ก็เพิ่มออปชั่น --smol เพื่อลดขนาด heap ลงและจองแรมให้ช้าลง ทำให้โดยรวมโปรเซสของ Bun กินแรมน้อยลงมาก ในการทดลองนั้นน้อยกว่า NodeJS เสียอีกแม้โหมดปกติจะกินแรมมากกว่า

ที่มา - Bun Blog

Get latest news from Blognone

Comments

By: peet itsawat on 25 July 2023 - 07:59 #1290296

อยากจะลองใช้ Bun ดูเหมือนกัน แต่ขอรอตัว stable version ก่อน

By: lew
FounderJusci's WriterMEconomicsAndroid
on 25 July 2023 - 11:03 #1290310 Reply to:1290296
lew's picture

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


lewcpe.com, @wasonliw

By: big50000
AndroidSUSEUbuntu
on 25 July 2023 - 17:28 #1290350 Reply to:1290296
big50000's picture

Memory Bleed เยอะจัด ๆ Unsafe Operation ไม่ได้อุดเพียบ ลองเขียนใช้เป็น Gateway พังบ่อยจนต้องถอยไปใช้ Deno แทน