Web 并发哪家强?Gevent or Tornado or NodeJS?

2014-11-03 15:12:23 +08:00
 wangleineo
现在产品的stack是Nginx+Gunicorn(worker-class=gevent)+Django, 但是总是听到NodeJS高并发的惊人传说,在想下个项目要不要转NodeJS,有几点要考虑:
1. 对Django框架比较熟了,换NodeJS有一定学习成本,而且express是比较轻量的框架,是不是免不了要自己写一些轮子?
2. 看了很多比较gevent,nodejs的benchmark,用的方法和结果都不一样,似乎没有统一结论。是不是真的相差很多?
3. Tornado怎么样?用gevent,项目代码不用改就能达到异步效果;用Tornado的话,是不是要写异步的代码?
有经验的来聊聊。
5319 次点击
所在节点    问与答
6 条回复
Livid
2014-11-03 15:48:18 +08:00
如果是实验项目,那就用自己最好奇的来做探索。

对于重要的项目,还是尽可能用自己熟悉的东西吧。

数据库驱动的 web 项目,大部分时候瓶颈不是在框架上,而是在缓存架构的设计和数据库上。
tang8888
2014-11-03 16:11:35 +08:00
楼主你说的这些都太年轻小清新了,建议你用大众化的PHP或JAVA,网上的资料多,可实现的功能多,用户体验好.
tang8888
2014-11-03 16:12:55 +08:00
永远要记得,成熟稳重大方才是硬道理.不要片面求新,求独特,求与众不同.否则将自毁之.
em70
2014-11-03 16:17:07 +08:00
大多数失败的互联网项目都是在只有100个用户的时候去考虑1亿用户的问题

不管用什么技术方案你都不大可能遇到实际的并发问题,真遇到了说明你的项目已经成功了,有足够的资源应对,现在真没必要操这个心.
chemzqm
2014-11-03 16:20:11 +08:00
express已经集成了几乎所以常用的中间件了,至于模板渲染和数据库连接之类的npm里面也有的是轮子可以选择。
Nodejs主要问题是嵌套回调,这种东西开发调试都很恶心,用koa会好一点
66450146
2014-11-03 16:34:23 +08:00
gunicorn + django + gevent 用好反向代理,配合正确的数据库和缓存,完全可以解决你的问题了,瓶颈往往在 IO 而不是 CPU

application 端是最容易 scale 的,不必太担心这头的性能问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/143628

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX