精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何在tomcat上配置jruby on rails

開發 后端
本文詳細講解了如何在tomcat上配置jruby on rails。

本文介紹了jruby on rails在tomcat的配置實踐。由于要在tomcat上部署3個rails項目,暫時使用的版本是rails1.2.3,jdk6 ,jruby1.1.2,tomcat5.5.12

用了一臺非常爛的測試機器(p4 2.8  1g),當然,真實服務器比這個要好多了

1.使用rails開發應用之后,使用goldspike打包,不過我老是不成功,所以基本都手動添加,需要的東西主要是

Web-inf下面的lib:

Java代碼

  1. jruby-complete-1.1.2.jar     
  2. mysql-connector-java-5.1.6-bin.jar     
  3. goldspike-1.6.jar     
  4. commons-pool-1.3.jar     
  5. activation-1.1.jar   

web-inf下面的gems,從你的ruby gems那里copy過來就可以了

主要有rails,另外由于使用mysql,所以有

Java代碼

  1. activerecord-jdbc-adapter-0.8    
  2. activerecord-jdbcmysql-adapter-0.8    
  3. jdbc-mysql-5.0.4    
  4. jruby-openssl-0.2.3 //可選   

2.修改environment.rb,不過貌似rails2是不需要配置這個的

Ruby代碼

  1. if defined?(JRUBY_VERSION)     
  2.   require 'rubygems'    
  3.   gem 'activerecord-jdbc-adapter'    
  4.   require 'jdbc_adapter'    
  5. end   

還有database.yml,使用jndi

Ruby代碼

  1. production:  
  2.   adapter: jdbc  
  3.   jndi: java:comp/env/jdbc/gdpolice 

最后是production.rb

Ruby代碼

  1. config.cache_classes = true    
  2. config.action_controller.consider_all_requests_local = false    
  3. config.action_controller.perform_caching             = true    
  4. config.action_view.cache_template_loading            = true    
  5. config.breakpoint_server = false   

3.配置web.xml

Xml代碼

  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <web-app xmlns="http://java.sun.com/xml/ns/j2ee"    
  3.   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
  4.   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"    
  5.   version="2.4">    
  6.     <context-param>    
  7.         <param-name>jruby.standalone</param-name>    
  8.         <param-value>true</param-value>    
  9.     </context-param>    
  10.     <context-param>    
  11.         <param-name>rails.env</param-name>    
  12.         <param-value>production</param-value>    
  13.     </context-param>    
  14.     <context-param>    
  15.         <param-name>files.default</param-name>    
  16.         <param-value>rails</param-value>    
  17.     </context-param>    
  18.          
  19.     <!-- 設置jruby線程池參數 -->    
  20.     <context-param>    
  21.         <param-name>jruby.pool.maxActive</param-name>    
  22.         <param-value>10</param-value>    
  23.     </context-param>    
  24.     <context-param>    
  25.         <param-name>jruby.pool.maxWait</param-name>    
  26.         <param-value>50000</param-value>    
  27.     </context-param>    
  28.          
  29.     <!-- 其他優化設置:objectspace和jit參數,設置session為db方式 -->    
  30.     <context-param>    
  31.         <param-name>jruby.objectspace.enabled</param-name>    
  32.         <param-value>false</param-value>    
  33.     </context-param>    
  34.     <context-param>    
  35.         <param-name>jruby.jit.threshold</param-name>    
  36.         <param-value>0</param-value>    
  37.     </context-param>    
  38.     <context-param>    
  39.         <param-name>jruby.session_store</param-name>    
  40.         <param-value>db</param-value>    
  41.     </context-param>    
  42.          
  43.     <servlet>    
  44.         <servlet-name>rails</servlet-name>    
  45.         <servlet-class>org.jruby.webapp.RailsServlet</servlet-class>    
  46.     </servlet>    
  47.     <servlet>    
  48.         <servlet-name>files</servlet-name>    
  49.         <servlet-class>org.jruby.webapp.FileServlet</servlet-class>    
  50.     </servlet>    
  51.     <listener>    
  52.         <listener-class>org.jruby.webapp.RailsContextListener</listener-class>    
  53.     </listener>    
  54.     
  55.     <!-- Allow all requests to go to the files servlet first -->    
  56.     <servlet-mapping>    
  57.         <servlet-name>files</servlet-name>    
  58.         <url-pattern>/</url-pattern>    
  59.     </servlet-mapping>    
  60.              
  61.     <resource-ref>    
  62.         <res-ref-name>jdbc/gdpolice</res-ref-name>    
  63.         <res-type>javax.sql.DataSource</res-type>    
  64.         <res-auth>Container</res-auth>    
  65.     </resource-ref>    
  66. </web-app>    
  67.  
  68. <?xml version="1.0" encoding="UTF-8"?> 
  69. <web-app xmlns="http://java.sun.com/xml/ns/j2ee" 
  70.   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  71.   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
  72.   version="2.4"> 
  73.     <context-param> 
  74.         <param-name>jruby.standalone</param-name> 
  75.         <param-value>true</param-value> 
  76.     </context-param> 
  77.     <context-param> 
  78.         <param-name>rails.env</param-name> 
  79.         <param-value>production</param-value> 
  80.     </context-param> 
  81.     <context-param> 
  82.         <param-name>files.default</param-name> 
  83.         <param-value>rails</param-value> 
  84.     </context-param> 
  85.       
  86.     <!-- 設置jruby線程池參數 --> 
  87.     <context-param> 
  88.         <param-name>jruby.pool.maxActive</param-name> 
  89.         <param-value>10</param-value> 
  90.     </context-param> 
  91.     <context-param> 
  92.         <param-name>jruby.pool.maxWait</param-name> 
  93.         <param-value>50000</param-value> 
  94.     </context-param> 
  95.       
  96.     <!-- 其他優化設置:objectspace和jit參數,設置session為db方式 --> 
  97.     <context-param> 
  98.         <param-name>jruby.objectspace.enabled</param-name> 
  99.         <param-value>false</param-value> 
  100.     </context-param> 
  101.     <context-param> 
  102.         <param-name>jruby.jit.threshold</param-name> 
  103.         <param-value>0</param-value> 
  104.     </context-param> 
  105.     <context-param> 
  106.         <param-name>jruby.session_store</param-name> 
  107.         <param-value>db</param-value> 
  108.     </context-param> 
  109.       
  110.     <servlet> 
  111.         <servlet-name>rails</servlet-name> 
  112.         <servlet-class>org.jruby.webapp.RailsServlet</servlet-class> 
  113.     </servlet> 
  114.     <servlet> 
  115.         <servlet-name>files</servlet-name> 
  116.         <servlet-class>org.jruby.webapp.FileServlet</servlet-class> 
  117.     </servlet> 
  118.     <listener> 
  119.         <listener-class>org.jruby.webapp.RailsContextListener</listener-class> 
  120.     </listener> 
  121.  
  122.     <!-- Allow all requests to go to the files servlet first --> 
  123.     <servlet-mapping> 
  124.         <servlet-name>files</servlet-name> 
  125.         <url-pattern>/</url-pattern> 
  126.     </servlet-mapping> 
  127.     
  128.     <resource-ref> 
  129.         <res-ref-name>jdbc/gdpolice</res-ref-name> 
  130.         <res-type>javax.sql.DataSource</res-type> 
  131.         <res-auth>Container</res-auth> 
  132.     </resource-ref> 
  133. </web-app> 

注明幾點:

jruby.standalone為false的時候,需要定義jruby.home

rails.env就對應rails的那幾種環境

jruby線程池有幾個參數(需要根據情況來配置),如下:

Java代碼

  1. jruby.pool.maxActive #最大運行時數量,默認4  
  2. jruby.pool.minIdle #最小運行時數量 默認2  
  3. jruby.pool.initialSize #運行時初始數量 默認jruby.pool.minIdle 的值  
  4. jruby.pool.checkInterval #檢查是否需要更多運行時之間的毫秒數 默認1000  
  5. jruby.pool.maxWait #最長等待時間 默認3000 

jruby.objectspace.enabled貌似默認就是false

jruby.jit.threshold設置使用jit編譯的方法數量的閥值,為0表示全部使用jit

jruby.session_store為db表示使用rails的db方式保存session

resource-ref只是針對5..5或以下,6.0不需要這個鬼東西

4.配置tomcat

server.xml(其實跟普通的web應用沒什么區別,就是配置數據源什么什么的,不說了)

另外有需要注意的是:

Jruby占用的內存,cpu相當驚人,所以要做好準備,需要配置好tomcat的內存參數(具體還是要配合機器)

Java代碼

  1. #catalina.sh     
  2. JAVA_OPTS="$JAVA_OPTS -server -Xms512m -Xmx512m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=256m"    
  3. #catalina.bat     
  4. set JAVA_OPTS=%JAVA_OPTS% -server -Xms512m -Xmx512m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=128m    
  5.  
  6. #catalina.sh  
  7. JAVA_OPTS="$JAVA_OPTS -server -Xms512m -Xmx512m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=256m" 
  8. #catalina.bat  
  9. set JAVA_OPTS=%JAVA_OPTS% -server -Xms512m -Xmx512m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=128m   

另外,tomcat服務器優化的就不說了,例如加httpd,調節參數,apr,nio之類。。。

5.其他觀察結果:由于部署多個rails,用jconsole監測,內存消耗很大,特別是permsize的消耗,一直維持在85m上下,所以導致真實服務器也出項outofmemory。經過測試,把上個項目的lib提取到tomcat的lib去(只保留一份),permsize僅僅維持在50m那樣子。另外要盡量使用jruby的新版本,1.1比1.0的性能提升相當大(感覺非常明顯)。后來還啟用了jruby的server模式,感覺就是tomcat的啟動速度慢許多了。。至于性能提升,暫時還沒察覺。。jruby有jit和aot兩種編譯模式,aot只是試過一下,還沒跟jit進行過測試對比,暫時不清楚。

6.以上就是jruby on rails在tomcat的配置實踐。jruby on rails的部署方式還是挺不錯的?,F在很期待jruby。

【編輯推薦】

  1. Jython和JRuby,以及Groovy:Java平臺的統一認識模型
  2. JRuby 1.3.0 RC1發布 加強對GAE支持
  3. JRuby中調用java帶可變參數的方法
  4. 使用Java Web Start部署JRuby應用
  5. JRuby入門教程:從無到有建立第一個Hello World
責任編輯:佚名 來源: JavaEye社區
相關推薦

2009-07-17 17:34:15

JRuby On Ra

2014-06-30 09:27:17

UbuntuTomcat集群

2019-07-12 16:28:32

MacKubernetes

2009-07-17 17:00:13

在JRuby下將RoR

2015-11-30 15:05:01

Linux瀏覽器Docker

2019-10-21 13:28:38

UbuntuPostgreSQL命令

2013-03-06 13:27:03

HadoopLinux

2015-11-24 14:14:00

CentOS 7.0Ceph配置

2009-07-20 15:37:26

JRuby安裝JRuby配置

2024-01-30 20:06:18

RHELVLAN

2018-03-29 15:21:03

LinuxDebian網橋

2009-12-14 15:37:35

Ruby on Rai

2020-03-18 14:40:14

Ubuntu 18.0RedisLinux

2022-12-27 08:51:31

WebDebian 11

2016-01-06 14:00:20

Ubuntu 14Ubuntu 15Apache Solr

2021-11-05 08:00:00

數據庫PostgreSQL開源

2009-07-17 17:05:29

JRuby是什么JRuby

2010-05-13 09:07:13

JRuby

2023-05-24 11:56:06

RHEL 9DHCP服務器

2015-08-04 13:29:06

Fedoralinux
點贊
收藏

51CTO技術棧公眾號

伊人免费视频二| 国产传媒一区| 欧美a在线播放| 亚洲精品一区av| 一区二区三区av电影 | 亚洲午夜精品久久久| 亚洲女同一区| 日韩极品精品视频免费观看| 国产超碰在线播放| 日本精品600av| 国产日韩三级在线| 亚洲国产成人久久综合| 国产在线观看福利| 求av网址在线观看| 大胆亚洲人体视频| 国产精品手机播放| 国产精品a成v人在线播放| 精品不卡一区| 精品三级av在线| 亚洲黄色av网址| aa视频在线观看| 国产麻豆欧美日韩一区| 日本成人精品在线| 欧美成人国产精品高潮| 欧美一级精品片在线看| 亚洲精美色品网站| 免费无码不卡视频在线观看| 毛片在线视频| 欧美国产日本视频| 另类小说综合网| 黄色小视频免费观看| 韩国毛片一区二区三区| 国产高清在线不卡| 天堂中文在线网| 国产一区久久| 美女精品久久久| 日韩在线一卡二卡| 国内亚洲精品| 亚洲色图13p| 泷泽萝拉在线播放| 图片婷婷一区| 日韩精品免费看| 丰满岳乱妇一区二区| 久久国际精品| 欧美一区二区三级| av在线免费观看国产| wwwxxx在线观看| 国产精品自拍三区| 国产日韩专区在线| 在线免费av片| 奇米综合一区二区三区精品视频| 97福利一区二区| 久久精品国产亚洲av高清色欲 | 欧美日韩在线观看一区二区三区| www.国产三级| 久久av资源网| 国产精品久久久久久久久久久新郎 | 91免费观看在线| 国产福利一区二区三区在线观看| 国产免费av一区| 欧美体内she精视频在线观看| 日韩色av导航| 极品尤物一区二区| 欧美日韩激情在线一区二区三区| 欧美v国产在线一区二区三区| 国产高清999| 日韩欧美激情| 91麻豆精品国产无毒不卡在线观看| 欧美亚洲另类久久综合| 无码精品视频一区二区三区| 成人av先锋影音| 国产精品手机视频| 手机av在线免费观看| yourporn久久国产精品| 麻豆av一区二区三区| 色在线免费视频| 福利一区二区在线观看| 99精彩视频在线观看免费| 精品久久久无码中文字幕| 国产成人精品免费一区二区| 97久久天天综合色天天综合色hd| 97超碰人人模人人人爽人人爱| 老司机午夜精品99久久| 91久久久精品| 成人av无码一区二区三区| 国产999精品久久久久久绿帽| 99se婷婷在线视频观看| 狠狠躁日日躁夜夜躁av| 91丨porny丨中文| 日本三级中国三级99人妇网站| 国产精品一级伦理| 成人免费一区二区三区视频| 日本不卡一区二区三区视频| 国产视频一区二区| 国产在线一区观看| 69堂成人精品视频免费| 色婷婷激情五月| 国产人成亚洲第一网站在线播放| 在线电影看在线一区二区三区| av毛片在线免费| 亚洲va欧美va天堂v国产综合| www黄色日本| av成人免费看| 日韩欧美成人激情| 国产艳俗歌舞表演hd| 久久国产精品亚洲人一区二区三区 | 中文字幕亚洲综合久久菠萝蜜| 日产精品久久久一区二区| av片在线观看| 色婷婷狠狠综合| 亚洲欧美一二三| 男同在线观看| 亚洲男人都懂的| 欧美网站免费观看| 亚州欧美在线| 亚洲美女av网站| 精品在线观看一区| 亚洲电影av| 国产精品毛片a∨一区二区三区|国| 国产免费黄色片| 91麻豆免费看片| 国产麻豆电影在线观看| 亚洲欧洲自拍| 欧美白人最猛性xxxxx69交| a天堂视频在线观看| 天海翼亚洲一区二区三区| 色综合久久中文字幕综合网小说| 伊人中文字幕在线观看| 国产精品夜夜嗨| 视频一区视频二区视频| 四虎影视精品成人| 亚洲少妇最新在线视频| 黄色片视频在线播放| 亚洲免费一区三区| 久久精品视频播放| 波多野结衣影片| 99久久99久久精品国产片果冻 | 黄网动漫久久久| 三级黄色片免费看| 日本另类视频| 日韩av在线高清| 毛片aaaaa| 亚洲网站啪啪| 91久久精品美女| 三区四区在线视频| 色综合咪咪久久| 久久久久亚洲无码| 欧美日韩国产色综合一二三四| 国产日韩欧美视频在线| 免费在线国产| 狠狠综合久久av一区二区小说| 国产免费无码一区二区| 欧美女人交a| 国产在线视频91| 超碰在线caoporn| 在线电影一区二区三区| 很污很黄的网站| 免费精品视频最新在线| 水蜜桃一区二区三区| 欧美自拍电影| 亚洲偷熟乱区亚洲香蕉av| 亚洲 欧美 日韩 综合| www.亚洲在线| 黄色大片中文字幕| 日本中文字幕在线一区| 91av在线播放视频| 亚洲 国产 欧美 日韩| 亚洲一二三级电影| 女尊高h男高潮呻吟| 国产乱码精品| 欧美一区二区三区在线播放| 97成人资源| 亚洲天堂开心观看| 最近国语视频在线观看免费播放| 国产三区在线成人av| 超碰在线人人爱| 日韩在线第七页| 亚洲专区国产精品| 日本成人不卡| 日韩成人在线电影网| 日韩 国产 在线| 久久综合五月天婷婷伊人| 黄色片久久久久| 日韩极品一区| 91久久精品国产91久久性色tv| 肉肉视频在线观看| 日韩成人黄色av| 中文字幕你懂的| 亚洲欧美另类综合偷拍| 99热超碰在线| 老司机久久99久久精品播放免费| 92福利视频午夜1000合集在线观看| 国产在线高清视频| 亚洲精品一区二区三区四区高清 | 日韩精品视频网址| 在线精品一区| 天堂精品视频| 清纯唯美激情亚洲| 欧洲成人在线观看| 免费av网站在线观看| 精品噜噜噜噜久久久久久久久试看| 日韩乱码一区二区| 国产精品乱码妇女bbbb| www.亚洲高清| 国产精品日本| 一区二区三区四区免费视频| 中文字幕视频精品一区二区三区| 98视频在线噜噜噜国产| 91涩漫在线观看| 欧美xxxxxxxxx| 艳妇乳肉豪妇荡乳av无码福利| 中文字幕在线不卡国产视频| 亚洲av无码一区二区三区网址| 蜜芽一区二区三区| 久久久久免费看黄a片app| 欧美高清视频手机在在线| 国产伦精品一区二区三区免| 欧美日韩视频免费看| 97国产精品视频人人做人人爱| 日韩精品毛片| 日韩精品一二三四区| 国产女人高潮时对白| 欧美日韩国产激情| 国产一级一片免费播放放a| 国产精品美女久久久久aⅴ国产馆| 免费黄色a级片| 欧美成人自拍| 久久国产精品一区二区三区| 成人豆花视频| 国产精品成人aaaaa网站| sqte在线播放| 欧美xxxx18性欧美| www免费网站在线观看| 精品网站999www| 国产乱码一区二区| 国产精品水嫩水嫩| 波多野结衣一本| 成人av网站在线| 日本少妇一区二区三区| 久久精品国产精品亚洲红杏| 人妻少妇被粗大爽9797pw| 欧美一区二区| 无码人妻aⅴ一区二区三区日本| 久久不见久久见免费视频7| 国产在线精品日韩| 嗯用力啊快一点好舒服小柔久久| 亚洲自拍欧美色图| 一区二区三区四区高清视频| 亚洲综合av影视| av日韩久久| 国产九九精品视频| 国产69精品久久| 日韩av高清不卡| 一区二区三区电影大全| 欧美影院在线播放| 精品人人视频| 97精品免费视频| 大片免费在线观看| 久久久久国产精品www| 男女羞羞视频在线观看| 欧美巨大黑人极品精男| 97超碰在线公开在线看免费| 色综合影院在线| 免费观看在线午夜影视| xxxxxxxxx欧美| 97在线观看免费观看高清| 久久久黄色av| 91麻豆国产福利在线观看宅福利| 蜜臀久久99精品久久久无需会员 | 亚洲视屏在线观看| 欧美三级资源在线| 一区二区三区亚洲视频| 日韩一区二区影院| 亚洲免费成人网| 亚洲高清一区二| 欧美精品a∨在线观看不卡| 在线日韩精品视频| 免费av在线| 久久久久国产精品一区| 欧美gv在线观看| 国产精品成人品| 欧美一区二区三区婷婷| 亚洲综合中文字幕在线| 亚洲电影一区| 久久久久久高清| 大胆日韩av| 水蜜桃在线免费观看| 极品中文字幕一区| 国产精品第12页| 久久精品噜噜噜成人av农村| 久久精品一二三四| gogogo免费视频观看亚洲一| 中文字幕一区二区三区人妻电影| 欧美国产禁国产网站cc| 国产无遮挡在线观看| 亚洲免费观看高清完整版在线观看熊| 午夜偷拍福利视频| 色网综合在线观看| 97人妻人人澡人人爽人人精品| 日韩欧美二区三区| 九色网友自拍视频手机在线| x99av成人免费| 99riav视频在线观看| 国产欧美精品日韩| 国产区一区二| 久久久久成人精品免费播放动漫| 不卡一区2区| 日韩国产一级片| 奇米影视7777精品一区二区| 91精品999| 99riav一区二区三区| 内射一区二区三区| 日韩欧美国产网站| 精品国产九九九| 亚洲一区二区福利| 国内在线免费视频| 国产精品av在线播放| 久久夜色电影| 蜜桃视频成人在线观看| 久久九九电影| 99久久人妻精品免费二区| 国产精品不卡在线| 精品国产午夜福利| 精品久久久久久久久久久久包黑料 | 精品伊人久久大线蕉色首页| 日韩精品久久| 免费男同深夜夜行网站| 成人黄色大片在线观看| 婷婷伊人五月天| 欧美中文字幕不卡| 亚欧洲精品视频| 欧美大片在线看免费观看| 国产福利一区二区三区在线播放| 精品人伦一区二区三区| 亚洲国产电影| 男人的天堂免费| 国产精品欧美一区喷水| 中文字幕在线看人| 日韩精品在线观看视频| 波多野结衣久久| 99中文字幕| 婷婷丁香综合| 黄色a级三级三级三级| 最新不卡av在线| 在线观看亚洲一区二区| 中文字幕精品—区二区| 欧洲亚洲两性| 美脚丝袜一区二区三区在线观看| 亚洲电影成人| 亚洲永久无码7777kkk| 亚洲高清在线视频| 日韩中文字幕免费在线观看| 欧美日韩ab片| 日韩免费一级| 成人污网站在线观看| 国产激情视频一区二区在线观看| 三上悠亚作品在线观看| 欧美日韩国产区一| 91精品专区| 国产精品日日摸夜夜添夜夜av| 禁断一区二区三区在线| 国产精品69页| 久久亚洲欧美国产精品乐播| 国产一级片免费在线观看| 亚洲性夜色噜噜噜7777| 成人日韩av| 免费看啪啪网站| 国产曰批免费观看久久久| 麻豆91精品91久久久| 亚洲第一中文字幕| 色吧亚洲日本| 日本一区高清不卡| 免费看日韩精品| 无码黑人精品一区二区| 91超碰这里只有精品国产| 黑人极品ⅴideos精品欧美棵| 国内精品视频免费| 另类天堂av| 99精品全国免费观看| 在线播放中文一区| 视频在线这里都是精品| 欧美中日韩免费视频| 琪琪一区二区三区| 国产免费美女视频| 日韩精品一区在线| 在线观看网站免费入口在线观看国内 | 粉嫩一区二区三区在线观看| 精品一二三四五区| 久久影音资源网| 中文字幕人妻一区二区三区视频| 北条麻妃久久精品| 视频在线一区| 亚洲性生活网站| 亚洲嫩草精品久久| 午夜福利一区二区三区| 国产精品美女免费视频| 欧美69视频| 久久中文字幕人妻| 欧美日韩视频第一区| 欧美xxxx黑人又粗又长|