ฉันเชื่อว่าชุมชน Erlang ไม่ได้มีความริษยาของ Node.js เนื่องจากเป็นแบบไม่บล็อก I / O และมีวิธีการปรับใช้งานได้อย่างง่ายดายไปยังตัวประมวลผลมากกว่าหนึ่งตัว รายละเอียดเพิ่มเติมได้ที่http://journal.dedasys.com/2010/04/29/erlang-vs-node-jsและNode.js หรือ Erlang
แล้ว Haskell ล่ะ Haskell สามารถให้ประโยชน์บางอย่างของ Node.js ได้หรือไม่นั่นคือโซลูชันที่สะอาดเพื่อหลีกเลี่ยงการบล็อก I / O โดยไม่ต้องขอความช่วยเหลือจากการเขียนโปรแกรมแบบหลายเธรด?
มีหลายสิ่งที่น่าสนใจสำหรับ Node.js
- เหตุการณ์: ไม่มีการจัดการเธรดโปรแกรมเมอร์ให้การเรียกกลับเท่านั้น (ในกรอบงาน Snap)
- รับประกันการโทรกลับเพื่อให้ทำงานในหัวข้อเดียว: ไม่มีสภาพการแข่งขัน
- API ที่ใช้งานง่ายและเป็นมิตรกับ UNIX โบนัส: รองรับ HTTP ที่ยอดเยี่ยม นอกจากนี้ยังมี DNS
- I / O ทุกตัวเป็นค่าเริ่มต้นแบบอะซิงโครนัส ทำให้ง่ายขึ้นในการหลีกเลี่ยงการล็อค อย่างไรก็ตามการประมวลผล CPU มากเกินไปในการติดต่อกลับจะส่งผลต่อการเชื่อมต่ออื่น ๆ (ในกรณีนี้งานควรแบ่งออกเป็นงานย่อยที่มีขนาดเล็กลงและกำหนดเวลาใหม่)
- ภาษาเดียวกันสำหรับฝั่งไคลเอ็นต์และฝั่งเซิร์ฟเวอร์ (ฉันไม่เห็นคุณค่ามากเกินไปในตัวนี้ jQuery และ Node.js ใช้โมเดลการเขียนโปรแกรมเหตุการณ์ แต่ส่วนที่เหลือแตกต่างกันมากฉันไม่เห็นว่ารหัสที่ใช้ร่วมกันระหว่างฝั่งเซิร์ฟเวอร์และฝั่งไคลเอ็นต์ทำได้อย่างไร มีประโยชน์ในทางปฏิบัติ)
- ทั้งหมดนี้บรรจุในผลิตภัณฑ์เดียว