Java平臺(tái)的企業(yè)級(jí)Ruby解決方案:JBoss的TorqueBox
隨著JRuby的不斷發(fā)展,Java與Ruby間的關(guān)系正變得越來越緊密。開發(fā)者希望能夠在Ruby中使用Java資源,在JVM上運(yùn)行Ruby on Rails應(yīng)用程序,于是各種解決方案應(yīng)運(yùn)而生,例如通過Warbler將Rails應(yīng)用程序打成標(biāo)準(zhǔn)的war包等等。然而,面對(duì)多種解決方案,功能、易用性和開源已成為開發(fā)者選擇工具時(shí)的考量因素。
#t#JBoss為我們帶來的TorqueBox正是這樣一個(gè)工具,不久前,它發(fā)布了基于JRuby 1.4的最新版本1.0.0.Beta18:
TorqueBox是一個(gè)企業(yè)級(jí)運(yùn)行環(huán)境,不僅完全兼容Ruby on Rails,還提供了傳統(tǒng)Rails運(yùn)行環(huán)境所無法匹敵的強(qiáng)大功能。
構(gòu)建于最新、最強(qiáng)大的JBoss AS應(yīng)用服務(wù)器之上,TorqueBox為Rails提供了“一站式”運(yùn)行環(huán)境。除了能夠運(yùn)行Rails應(yīng)用程序,自1.0.0.Beta17起TorqueBox就為基于Rack的框架提供了支持,此外還提供了定時(shí)任務(wù)、任務(wù)隊(duì)列、SOAP處理等一些列功能。在TorqueBox中不僅能夠使用大量JDBC驅(qū)動(dòng),配置數(shù)據(jù)源,甚至還能用Capistrano幫助進(jìn)行部署。
JBoss早已不再是單一的Java應(yīng)用服務(wù)器,它代表了一整套完整的、涉及企業(yè)級(jí)應(yīng)用方方面面的解決方案。有了如此強(qiáng)大的支持,Rails離成熟的企業(yè)級(jí)應(yīng)用又近一步。TorqueBox為Rails應(yīng)用程序帶來了的密鑰存儲(chǔ)機(jī)制、完善的集群方案等多項(xiàng)特性,令人耳目一新。
在安裝TorqueBox前,請(qǐng)先確認(rèn)已經(jīng)安裝了JDK 6或以上版本,Linux下可以選擇OpenJDK,但請(qǐng)不要使用gcj。在TorqueBox的完整二進(jìn)制包中已包含了JRuby,所以無需另外安裝,解壓縮后設(shè)置幾個(gè)環(huán)境變量即可使用。
- unzip torquebox-bin-1.0.0.Beta18.zip
- ln -s torquebox-bin-1.0.0.Beta18 ~/torquebox-current
- export TORQUEBOX_HOME=~/torquebox-current
- export JBOSS_HOME=$TORQUEBOX_HOME/jboss
- export JRUBY_HOME=$TORQUEBOX_HOME/jruby
- export PATH=$JRUBY_HOME/bin:$PATH
創(chuàng)建Rails應(yīng)用程序時(shí),可以選擇用TorqueBox提供的模板,也可以用傳統(tǒng)方式創(chuàng)建,隨后根據(jù)文檔手動(dòng)修改:
- rails -m $TORQUEBOX_HOME/share/rails/template.rb
在TorqueBox的主頁上提供了詳細(xì)的文檔,幫助開發(fā)者了解TorqueBox的使用,如果想要在短時(shí)間內(nèi)對(duì)它有個(gè)大致的了解,可以下載官方錄制的視頻,5分鐘就能搭建起一個(gè)運(yùn)行于TorqueBox之上的Rails應(yīng)用程序。