10月24日,Rails发布了2.2的预览版本,这是Rails历史上一次重大的版本升级!主要包括如下重大改动:
1、支持国际化了!
Rails2.2集成了一个i18n框架,并且把Rails内部所有的提示信息全部用i18n的方式处理,现在你只需要根据自己的语言编写相应的资源文件,就可以实现Rails提示信息全部本地语言化了。当然利用i18n框架,你也可以方便的同时支持多语言开发。Rails的国际化支持方式和Java的方式基本一致。
2、支持多线程运行Rails
Rails的ActionController是每次HTTP请求创建实例的,因此本身就支持多线程运行;而ActiveRecord是单实例的,因此之前的版本不支持多线程。而Rails2.2改写了ActiveRecord相应的实现,使得ActiveRecord是线程安全的了,并且集成了一个数据库连接池,当Rails以多线程方式运行的时候,线程会从数据库连接池分配数据库连接来访问数据库。
Rails传统上是以多进程方式运行的,支持多线程方式运行会给Rails带来很多好处,比方说节约更多内存,运行速度更快,但是也会带来一些坏处,比方说线程争用,GC影响更大等等。关于这个问题,JavaEye将后续连续撰文,详细分析。
3、兼容Ruby 1.9和JRuby
Rails 2.2已经可以顺利的在Ruby 1.9和JRuby上面流畅的运行了。等到今年圣诞节Ruby 1.9.1正式版本发布以后,Rails应用的速度将得到3倍以上的巨大提升,Rails社区将迎来新的繁荣期。
4、可以对HTTP响应信息的etag和last modified进行编程处理,实现HTTP请求级别的缓存
这是Rails的REST特性的一个重大延伸,Rails可以根据REST资源是否被修改来发送HTTP响应的etag和last modified信息,从而控制REST资源被有效的缓存。关于这个特性,JavaEye也将后续撰文分析。
5、Rails官方网站推出在线文档站点,http://guides.rubyonrails.org
这不是Rails2.2的功能,但是是Rails开发社区的一大好消息。过去Rails开发人员都是通过《Agile Web Development with rails》一书学习入门,然后通过自己查rdoc来进一步了解Rails。现在官方的文档网站上线,可以在线查找更多更丰富的Rails编程方面的知识了。
08-23
08-23
08-23