Rails 国外的一篇 web 框架大比拼的文章,跟 robbin 的文章可以对照来看

junlai · 2013年03月30日 · 最后由 blacktulip 回复于 2013年03月30日 · 9642 次阅读

分享一篇最新出炉国外的 web 框架大比拼的文章, http://www.techempower.com/blog/2013/03/28/framework-benchmarks/ 文章介绍了详细的性能测试过程,包括 json 对象的序列化,连接数据库等,值得一看。 ruby、python 系列的框架跟 java 等比拼在性能上差距还是很大:

但是从测试代码的长短来看,ruby 系的就瞬间秒杀其他语言了:

我觉得选框架就跟习大大说的那样,鞋子合不合适,只有脚知道。没有最好,只有最合适的。

这个比较完全是没有意义的 ,异步不是异步的放在一起,用协程类似的和线程,进程的放在一起

就看你想不想用空间(代码长度)换时间了

一般来说,做实际应用,用 Java 语言几乎不可能裸写 netty 和 Servlet 的,除非极特殊的情况,同样的情况下,Ruby 也比较少直接用 Rack,Python 也很少直接用 WSGI,所以就框架比拼来说,至少应该是从 express 往下看起,往上就没必要看了。

那你看除了 cakephp 和 rails 比较差以外,主流 web 框架基本都在 1000-7000 这个区间,差异有,但是实际应用场景不会差太多,最多 3 倍以内。

所以最后用什么,更多取决于程序员的偏好了。例如我的话,不喜欢 Java 语法的繁琐,不喜欢 node.js 变态的异步回调,不喜欢 PHP 代码组织凌乱,不喜欢 Go 贫瘠的类库,排除法下来只能选择 Python 或者 Ruby。那我相对更熟悉 Ruby,当然会选择 ruby。

长度问题不能这么比吧,你不能把准备 statement,异常处理只加在 java 里,rails 难道不需要。

#4 楼 @tiemei Rails 里面异常不处理会显示默认 500 界面,Java 不处理就编译不过。

#5 楼 @Rei Spring 为例,亦支持 GlobalExceptionHander,throw 掉就行。至于需要单独考虑的异常,ruby 也免不了。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号