除了那个 node .js是用js编写的,Tornado是用Python编写的,两者之间有什么区别?它们都是非阻塞异步web服务器,对吗?除了语言,为什么要 Select 一种呢?
除了那个 node .js是用js编写的,Tornado是用Python编写的,两者之间有什么区别?它们都是非阻塞异步web服务器,对吗?除了语言,为什么要 Select 一种呢?
node的主要优势.js是all its libraries are async,所以你不必太担心阻塞.mysql、postgres、redis等都有异步库.默认情况下都是异步的.
Python有一个用于任何内容的库——但大多数库都不是异步的.为了利用tornado(而不是阻止这个过程),需要为其提供特殊的库(例如,你不能只是"pip install redis"并使用它,你需要大约brukva个),而且tornado库比node少得多.js库.例如,目前还没有异步mysql tornado驱动程序(或者至少我不知道).
但您仍然可以将许多python库与tornado(不进行i/o的库)结合使用,tornado社区正在填补这一空白.
使用node编写应用程序更容易.在我的经验中,js比使用tornado更好.我个人从node切换到了tornado.js,因为它更适合我的python项目的现有基础设施(提供html页面的django站点和提供实时功能的tornado服务器之间的集成非常轻松).