Erlang topluluğunun yerel olarak engellemeyen G / Ç'yi yaptığı ve konuşlandırmaları birden fazla işlemciye (Node.js'de yerleşik olmayan bir şey bile) kolayca ölçeklendirme yollarına sahip olduğu için Node.js'yi kıskanmamış olduğuna inanıyorum. Http://journal.dedasys.com/2010/04/29/erlang-vs-node-js ve Node.js veya Erlang adresinde daha fazla ayrıntı
Haskell ne olacak? Haskell, Node.js'nin bazı avantajlarını, yani çok iş parçacıklı programlamaya başvurmadan G / Ç'yi engellemekten kaçınmak için temiz bir çözüm sağlayabilir mi?
Node.js ile çekici olan birçok şey var
- Olaylar: İş parçacığı manipülasyonu yok, programcı yalnızca geri aramalar sağlar (Snap çerçevesindeki gibi)
- Geri aramaların tek bir iş parçacığında çalıştırılması garanti edilir: yarış durumu mümkün değildir.
- Güzel ve basit UNIX dostu API. Bonus: Mükemmel HTTP desteği. DNS de mevcuttur.
- Her G / Ç varsayılan olarak eşzamansızdır. Bu, kilitleri önlemeyi kolaylaştırır. Ancak, bir geri aramada çok fazla CPU işlemesi diğer bağlantıları etkileyecektir (bu durumda, görev daha küçük alt görevlere bölünmeli ve yeniden programlanmalıdır).
- İstemci tarafı ve sunucu tarafı için aynı dil. (Ancak, bu bir çok değer görmüyorum. JQuery ve Node.js olay programlama modelini paylaşmak ama gerisi çok farklı. Sadece sunucu tarafı ve istemci tarafı arasında paylaşım kodu nasıl olabilir göremiyorum pratikte yararlı olabilir.)
- Bütün bunlar tek bir üründe paketlenmiştir.