锁定老帖子 主题:用rails 3的有没有想过退回到2.3的
精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-27
到底好不好,慢不慢,你还是自己去实践实践吧。别看了几篇BLOG就说这也不好,那也不行。天天还有人嚷着JAVA要死了呢,你看人家还不是活的好好的。我没上过3.1,但从我的小站在3.X上运行的情况来看,3.X并没有你想象的那么慢。
|
|
返回顶楼 | |
发表时间:2011-06-27
花花知道在鸡眼网发贴 是多么徒劳的事了吧
|
|
返回顶楼 | |
发表时间:2011-06-27
最后修改:2011-06-27
rails很多地方做的很不好。比如关于form,routes等,太多的语法糖,同一个东西写法太多,过于花哨,不实用。带来的是学习上的成本提高,而没有任何一点好处。
真的慢了好多。不过还没开始用r3 http://blog.tstmedia.com/news_article/show/86942 引用 A simple reproducible benchmark shows ActiveRecord 3.0.7 to be 1.43 times slower than ActiveRecord 2.3.2.
|
|
返回顶楼 | |
发表时间:2011-06-27
最后修改:2011-06-27
的确是慢了,刚好有个项目从2.3.9升级到3.0.5的,简单对比下db和routes的:
for 2.3.9: development: time rake db:version real 0m24.219s user 0m10.152s sys 0m2.971s time rake routes real 0m19.710s user 0m10.089s sys 0m2.713s production: time rake db:version RAILS_ENV=production real 0m20.110s user 0m12.217s sys 0m2.592s time rake routes RAILS_ENV=production real 0m19.384s user 0m12.109s sys 0m2.600s for 3.0.5: development: time rake db:version real 0m41.514s user 0m26.641s sys 0m3.403s time rake routes real 0m34.094s user 0m27.760s sys 0m3.100s production: time rake db:version RAILS_ENV=production real 0m26.630s user 0m20.295s sys 0m2.643s time rake routes RAILS_ENV=production real 0m24.340s user 0m21.401s sys 0m2.547s 在development上rails3比2慢了将近一倍 但比较让人满意的是production时区别不大 但在做开发时随便跑个rails、rake命令都要30-40秒以上实在影响情绪 肯定是不会退回去的,rails3好的地方更多,只是希望再后面的版本性能能提上来。 另外个人不大喜欢coffeescript这种东西。 |
|
返回顶楼 | |
发表时间:2011-06-27
R3.1上,coffeescript和scss这两个变化我个人情感上很喜欢,但是目前是项目里还基本忽视,类似的锦上添花的变化每次都有一些。
我觉得ActiveRecord/association,engine和route的变化比较值得关注。 只是一些方法变化太大,主要还有一些明显的bug,让人觉得很不舒服。 |
|
返回顶楼 | |
发表时间:2011-06-27
3.1 coffee这东西把gem去掉就ok了,generate的时候就不会生成有关coffee的东西
|
|
返回顶楼 | |
发表时间:2011-06-27
从rails2.3到3.1,我觉得很多地方越来越好。
易用性方面: 引用 Bundler
ActiveRecord 的新 Query API ActiveRecord 的新 Validation API Block Helper UJS 新的 Routing API 新的 ActionMailer Rails console默认输出SQL query log Custom ActiveRecord Attribute Serialization 解耦合方面: 引用 Mountable Engines
Template Inheritance ActiveModel 安全方面: 引用 XSS ActiveModel::SecurePassword Rack::SSL 性能方面: 引用 HTTP Streaming
SQL Prepared statements Rack::Cache ActiveRecord Identity Map 还有就是修复若干bug 当然目前各种测试表明,rails3的性能确实不如rails2.3。据说rails3.2要优化性能和内存使用情况(好像3.0的时候就提过..)。 我觉得从框架本身上提升rails性能空间有限,rack就是rails性能的极限,但是rack/sinatra的性能和nodejs的框架比起来还差得远。 |
|
返回顶楼 | |
发表时间:2011-06-27
rainchen 写道 的确是慢了,刚好有个项目从2.3.9升级到3.0.5的,简单对比下db和routes的:
for 2.3.9: development: time rake db:version real 0m24.219s user 0m10.152s sys 0m2.971s time rake routes real 0m19.710s user 0m10.089s sys 0m2.713s production: time rake db:version RAILS_ENV=production real 0m20.110s user 0m12.217s sys 0m2.592s time rake routes RAILS_ENV=production real 0m19.384s user 0m12.109s sys 0m2.600s for 3.0.5: development: time rake db:version real 0m41.514s user 0m26.641s sys 0m3.403s time rake routes real 0m34.094s user 0m27.760s sys 0m3.100s production: time rake db:version RAILS_ENV=production real 0m26.630s user 0m20.295s sys 0m2.643s time rake routes RAILS_ENV=production real 0m24.340s user 0m21.401s sys 0m2.547s 在development上rails3比2慢了将近一倍 但比较让人满意的是production时区别不大 但在做开发时随便跑个rails、rake命令都要30-40秒以上实在影响情绪 肯定是不会退回去的,rails3好的地方更多,只是希望再后面的版本性能能提上来。 另外个人不大喜欢coffeescript这种东西。 这个时间大部分都是ruby的加载文件所花的时间,和rails性能没多少关系。当然这个会影响开发体验。 ruby1.9.2的require性能问题已经解决了:http://www.rubyinside.com/ruby-1-9-3-faster-loading-times-require-4927.html |
|
返回顶楼 | |
发表时间:2011-06-27
wenyiyun 写道 yehuda的胡子还嫩着呢,我猜他的计算机功底是一坨狗屎,纵然他又搞JS又搞html。
这是冷笑话么 |
|
返回顶楼 | |
发表时间:2011-06-27
以我的经历来说,Rails3.0看了下,我觉得内部结构优化的不错,但没有任何让我换版本的动力。毕竟jquery早有插件可以支持,ActiveRecord我也没需求换成其他的,反而要连带命令变更、接口变更等的麻烦,于是继续用Rails 2.3.
但是,3.1的出现,Rails让人提神的东西又出现了。scss虽然本来也就存在,但和rails框架内的结合还是3.1做的好,asset变成头等公民的意义重大。coffeescript值不值两说,但反正可以直接在里面写js,Rails3.1为此提供了一个良好的什么代码放在什么位置的惯例和框架,这是很棒的。同样在view层面,还支持了view模板的继承,终于开始有一个框架把写OO代码常用的思想运用到view层去了,这是了不起的创举。动手写网页的人都明白,写web应用最费时间的就是view层。另外几个层面老实说已经解决的算不错了,但view层基本被动的很少。Rails3.1在这方面做出了突破。 说道性能,Rails3主要搭配ruby1.9了,不知道1.9@3.1 vs 1.8@2.3性能如何。无论如何,这一点确实挺让人郁闷的,从各种言论来看,rails3的性能提升确实不佳。 但是,提神的东西超过让人郁闷的东西,老的项目我是不想折腾,继续2.3。新的项目那肯定直接上3.1了。 |
|
返回顶楼 | |