resin配置資料庫
❶ resin 配置多個host都指向同一個地方會啟動兩個獨立的實例嗎
監聽上不用任何設置,pmon每2分鍾都會檢查一下實例,會自動注冊service到監聽的,除非你資料庫沒有正常啟動。我覺得你就屬於後一種情況,另外兩個實例重啟後沒正常啟動
❷ resin配置資料庫的時候出錯了,啟動項目的時候報錯
$ORACLE_HOME/jdbc/lib/classes12.jar復制到,相應的應用路徑下,或者在環境變數中CLASSPATH裡面直接寫上這個文件classes12.jar的全路徑$ORACLE_HOME/jdbc/lib/classes12.jar。
❸ 關於resin怎麼配置,資料庫是sql Server
多是防火牆制止了SQL的1些功能,建議在裝SQL的時候,關閉乃至卸載防火牆
❹ resin怎樣配置oracle的數據源和連接池
動態web站點設計中,資料庫已成為必不可少的一部分,但資料庫連接和釋放開銷很大,對於一個訪問量少的網站可能沒有什麼影響,但同時有很多用戶來網站查詢資料時,就會導致伺服器響應慢甚至死機。連接池就是針對這個問題提出的。
資料庫連接池負責分配、管理和釋放資料庫連接,它允許應用程序重復使用一個現有的資料庫連接,而再不是重新建立一個;釋放空閑時間超過最大空閑時間的資料庫連接來避免因為沒有釋放資料庫連接而引起的資料庫連接遺漏。這項技術能明顯提高對資料庫操作的性能。
數 據庫連接池在初始化時將創建一定數量的資料庫連接放到連接池中,這些資料庫連接的數量是由最小資料庫連接數來設定的。無論這些資料庫連接是否被使用,連接 池都將一直保證至少擁有這么多的連接數量。連接池的最大資料庫連接數量限定了這個連接池能佔有的最大連接數,當應用程序向連接池請求的連接數超過最大連接 數量時,這些請求將被加入到等待隊列中。
❺ resin默認的配置是會自動重啟的 怎樣防止resin自動重啟
很明顯是內存用完了,內存一旦用完,出現任何錯誤都是正常現象,
內存用完主要有幾方面,伺服器內存太少,用戶太多,在程序中沒有及時回收內存資源,
比如放了太多的東西在session中,沒有及時關閉資料庫連接等。
用戶關閉瀏覽器,session半個小時才釋放.
resin多個埠配置好象有問題,我也試過沒成功,建議還是用單埠.
❻ linux配置的monogdb資料庫與resin伺服器怎麼對接
先不考慮網路限制,假設兩台linux 都能telnet進去,現在有A、B兩個伺服器上的mysql,如果讓A能訪問B ,那麼可以再B庫中執行 grant all privileges on *.* to 'java'@'B的ip' identified by 'password',然後flush privileges即可
❼ 如何安裝resin
1.Resin 可以在 http://www.caucho.com/download/index.xtp 免費下載和使用。使用Resin開發或者學習是免費的,但是如果把Resin作為收費產品發布是需要付費的。目前的版本是2.10.
下載Resin 時選擇Archive Versions 中的 windows.zip的普通安裝包resin-2.1.0.zip.
把該zip包解壓到任何目錄下面,如d: esin.以下介紹都假設Resin安裝在d: esin下。進入d: esinin,
鍵入httpd,可以在命令行控制台下運行Resin伺服器。此時彈出一個有start 和stop兩個Radio按紐和一close按紐的對話框。在這里可以看到Resin的運行信息。這些信息同時Resin可以在d: esinlog目錄下面的stdout.log 日誌文件中察看到。如:
Resin 2.0.4 (built Thu Nov 15 17:56:24 PST 2001)
Copyright(c) 1998-2001 Caucho Technology. All rights reserved.
Starting Resin on Wed, 23 Jan 2002 14:41:47 +0800 (CST)
http listening to *:80
srun listening to haitaiserver:6802
點選stop,可以停止當前的Resin伺服器進程;再點選start,又可以開啟新的Resin伺服器進程。關閉該對話框,則回到Command 控制台的盤符提示狀態下。如果在nt4或者win2k環境下,需要把Resin當成服務,只需要在Command控制台的該目錄下,鍵入 httpd ?install,就可以在管理工具的服務下面看到新增了一條Resin
Web Server的自動的服務。以後只要進入nt 4或者win2k,就可以啟動Resin服務。該服務也可以像其他服務一樣設置成手動或者禁用狀態。注意有的時候在安裝完服務後,啟動Resin,並不能看到自己寫的Resin常式可以被解析,瀏覽器顯示伺服器找不到錯誤。只要重新啟動win2k或者nt,就能解決該問題。
下面簡要介紹一下Resin伺服器的配置。Resin伺服器和大多數Java Web伺服器一樣,通過一個Xml文件配置。
進入d: esinconf目錄,打開resin.conf,這是一個xml格式的文本。
這裡面有很多標記,先查找到:。在標記對中的配置和resin的
Java Web 伺服器有關。找到,在標記對中的表示resin的根,相當於Apache的htdocs 或者 IIS 的wwwroot.Resin自帶http伺服器,但是也可以不使用它,採用Apache 或者 IIS做http伺服器。這個在下面段落中會提到。
再查找標記,它可以這樣配置。host參數指定的是伺服器,port指定的是http埠,默認是localhost和8080.還有標記。這個是jsp 和java Servlet的引擎配置。一般默認就可以了,除非6802埠已經被別的程序佔用了。然後,配置jdk.這個需要在classpath中設置。右鍵點擊我的電腦,在系統特性的高級標簽中,點擊環境變數,
在系統變數中新建一個環境變數,變數名為classpath,值為jdk所在的目錄;再新建另外一個環境變數,變數名為path,值為javac.exe 和java.exe所在的目錄(在jdk所在的目錄下面的bin目錄下)。一般這樣子配置以後,Resin就可以使用了。在d: esindoc中(假設你的對中的名稱是doc,也就是根是d:/resin/doc,而且你的如左配置),隨便寫一個jsp文件,如可以寫
個test.jsp文件,內容為。然後,在瀏覽器中,鍵入http://localhost/test.jsp.如果你可以看到瀏覽器顯示6,則表示Resin伺服器已經可以正常運行了。注意,修改配置後,一般重新啟動resin才能看到變化
2.
安裝:
解壓resin之後,以和apache結合的方式編譯resin3
./configure --with-apache=/home/webadm
.make
.make install
編譯完成之後.要修改apache的配置文件httpd.conf. 之前和2.0.x結合的apache的配置為CauchoConfigFile /home/resin/conf/resin.conf, 現在必須將這一行改成
ResinConfigServer localhost 6802 (6802為resin的srun的埠 ), 這樣才能實現apache和resin的結合.
主要配置說明
resin3的web-app配置和2.0有一定的區別.
首先,將web-app-deploy的相關配置去掉(該目錄主要為打包的war文件設置目錄,當與下面的host的document-directory不同時,document-directory無效 ) , 然後修改
<host> 的<document-directory>/home/webpub</document-directory>, /home/webpub為程序主頁存放的目錄.
配置servlet-mapping,在web-app里設置.如下
<servlet-mapping url-pattern='/servlet/*' servlet-name='invoker'/>
配置資料庫.範例如下
<database>
<jndi-name>jdbc/test</jndi-name>
<driver type="org.gjt.mm.mysql.Driver">
<url>jdbc:mysql://127.0.0.1:3306/test</url>
<user>test</user>
<password>test</password>
<init-param useUnicode="true"/>
<init-param characterEncoding="gb2312"/>
</driver>
<prepared-statement-cache-size>8</prepared-statement-cache-size>
<max-connections>300</max-connections>
<max-idle-time>30s</max-idle-time>
</database>
需要注意的是,resin3的DBPool沒有了getPool(String PoolName)的方法.所以以前的數據池連接方法不能使用了.比較折中的修改方法是, 重寫一個DBPool類,然後把java類裡面的import com.caucho.sql.*;去掉避免沖突.
DBPool類範例:
package com.netease.mm;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class DBPool
{
private Connection conn = null;
public static DBPool getPool(String poolName)
{
try
{
Context env = (Context) new InitialContext().lookup("java:comp/env");
DataSource source = (DataSource) env.lookup("jdbc/"+poolName);
DBPool pool = new DBPool();
pool.conn = source.getConnection();
return pool;
}
catch(Exception e)
{
return null;
}
}
public Connection getConnection()
{
return conn;
}
}
配置stderr,stdout等log問題. Resin3默認並不會將程序出錯的信息列印出來.需要自己設置.
在<resin>結點之下添加如下配置:
<log name='' level='all' path='stderr:' timestamp="[%H:%M:%S.%s]"
format=" ${log.level} ${log.loggerName} ${log.message}"/>
配置中無法解決的問題: 在resin2.0.x中.可以設置error-page,當resin啟動錯誤或未啟動時,訪問主頁將自動轉向到所設置的error-page, 在resin3中,雖然主頁幫助裡面提到這個設置
例:<error-page exception-type='connection' location='/errpage.html'/>, 但經過測試.無論將此設置放在哪一層結點(resin,server,host,web-app)之下.都無法起到轉向的作用. 這就引發一個嚴重的問題,當resin3未啟動而apache運行時.訪問jsp頁面,將直接顯示出源碼.該問題在resin3至今發布的版本都存在,目前找不到有效便捷的解決方法.
❽ 如何在 resin下配置資料庫連接池
這項技術能明顯提高對資料庫操作的性能。
資料庫連接池在初始化時將創建一定數量的資料庫連接放到連接池中,這些資料庫連接的數量是由最小資料庫連接數來設定的。無論這些資料庫連接是否被使用,連接池都將一直保證至少擁有這么多的連接數量。連接池的最大資料庫連接數量限定了這個連接池能佔有的最大連接數,當應用程序向連接池請求的連接數超過最大連接數量時,這些請求將被加入到等待隊列中。
resin提供了一個良好的連接池來供開發人員來實現資料庫連接,具體配置如下:
在/conf/resin.conf中加入以下內容:
<database
❾ resin4.0資料庫配置寫在什麼位置
刪除
<resin:import path="${__DIR__}/health.xml"/>
刪除
<web-app id="">
<resin:LoadBalance regexp="" cluster="app"/>
</web-app>
僅保留自己需要使用的cluster, 其它的可以刪除刪除cluster id="web", cluster id="memcached"
修改 resin.properties ,
web_admin_enable : false
session_store : false (每個伺服器是一個集群,不需要考慮session 持久化)
resin_doc : false
dev_mode:false
刪除 resin.xml 里的
<host id="" root-directory=".">
<!--
- webapps can be overridden/extended in the resin.xml
-->
<web-app id="/" root-directory="webapps/ROOT"/>
<resin:if test="${resin_doc}">
<web-app id="/resin-doc" root-directory="${resin.root}/doc/resin-doc"/>
</resin:if>
</host>
添加host ,如添加cms應用。
<web-app id="/" root-directory="/data/www/cms">
</web-app>
防止hash collision dos攻擊, form-parameter-max 用來限制每次post submit的參數個數 ,
<web-app id="/" root-directory="/data/www/cms">
<form-parameter-max>100</form-parameter-max>
</web-app>
日誌記錄,記錄cms的訪問日誌:
<web-app id="/" root-directory="/data/www/cms">
<form-parameter-max>100</form-parameter-max>
<stderr-log path='/data/logs/cms/stderr.log' timestamp='[%Y-%m-%d %H:%M:%S] ' rollover-period='1D'/>
<stdout-log path='/data/logs/cms/stdout.log' timestamp='[%Y-%m-%d %H:%M:%S] ' rollover-period='1D'/>
</web-app>
你根據自己的應用需要,對照著修改吧。