豆瓣
扫码直接下载
在你的博客里看过几段,实在没时间就复制过来吧。
node.js的特色是单线程异步模型。这种模型显而易见的问题就是会造成callback hell。callback hell可以靠CPS转换来破,具体办法看我博客(http://www.ac.net.blog.163.com/blog/static/13649056201210173259510/)。 但另一个问题就不那么显而易见了,即使有了CPS转换,如果执行耗时操作,会导致公平性问题。参见Haxe作者的博文“Is NodeJS Wrong?”(http://ncannasse.fr/blog/is_nodejs_wrong)。不过如果你能保证你所有代码都不调用阻塞函数,也不执行CPU密集运算,那你倒是可以无视这个问题。 为什么Erlang是世上最靠谱的并发语言呢?这当然是因为Erlang有轻量级进程,不需要用CPS转换之类的怪招去模拟执行多线程。此外更是因为Erlang为进程提供了调度器,避免了公平性问题。 顺便说一下,这种调度器除了解决公平性问题,还是实施Let It Crash的基础。之前黑akka的actor时提到过(http://www.douban.com/group/topic/36511309/#431943661)。
凡是赞Erlang的都要大力赞~\(≧▽≦)/~
在这里发现跟你一样特别的人,并与之交流...