apache橋接weblogic報錯:No backend server available for connection: timed out after 10 seconds or idempotent set to OFF


http://blog.csdn.net/myid/article/details/7279357

4.編輯httpd.conf文件,在Listen 80行后,增加:Include conf/weblogic.conf

設置以下屬性的值:

Timeout 300

KeepAlive On

MaxKeepAliveRequests 0

ThreadsPerChild 1920

MaxRequestsPerChild  10000

LogLevel error

其中:ThreadsPerChild、MaxRequestsPerChild的設置是為了解決:Action.c(10): Continuing after Error -26609: HTTP Status-Code=503 (Service Temporarily Unavailable)錯誤。

去掉server-status配置模塊相關配置信息的注釋,使其生效。比如

<Location /server-status>

    SetHandler server-status

    Order allow,deny

    Deny from nothing

    Allow from all

</Location>

去掉下面4行語句之前的#號:

#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule rewrite_module modules/mod_rewrite.so

5.將C:\bea\weblogic81\server\bin目錄下的mod_wl_20.so復制到apache安裝目錄 C:\Program Files\Apache Group\Apache2\conf下。

6.新建weblogic.conf文件,內容如下:

LoadModule weblogic_module modules/mod_wl_20.so 
<Location /TestDL> 
SetHandler weblogic-handler 
WebLogicCluster 82.0.98.237:7001,82.0.176.3:7001
Debug ON
Debug ALL
DebugConfigInfo ON
WLLogFile c:\wl.log 
DynamicServerList OFF
KeepAliveEnabled ON
KeepAliveSecs 30 
</Location>

其中:/TestDL是應用的上下文根

         82.0.98.237:7001,82.0.176.3:7001是2台web服務器的IP地址及端口號,中間用逗號分隔。

         DynamicServerList設置為OFF,在對由插件所代理的請求進行負載平衡時,不使用動態集群列表,而是使用WebLogicCluster參數指定的靜態列表。

         DynamicServerList 、KeepAliveEnabled、KeepAliveSecs 的設置是為了解決: No backend server available for connection: timed out after 10 seconds or idempotent set to OFF錯誤。

 

http://dev2dev.us/thread-18058-1-1.html

  1. Idempotent should be set to ON and if the servers do not respond within HungServerRecoverSecs (WLIOTimeoutSecs), the plug-ins fail over. If set to “OFF” the plug-ins do not fail over.
  2. All session objects should be serializable to replicate.

If the server become frozen or hung, then there won’t be response to the proxy server until WLIOTimeoutSecs is elapsed. If neither the session replication nor Idempotent is set, then already established session won’t be replicated and will not fail over to next available server. If there is no session replication but Idempotent is set, then the request will fail-over to next server but the sticky session will be lost since the session is not replicated, so a new session will be given from the next available server in the clustered server list.

If the user cannot implement the replication due to the object serialization but can set Idempotent, then as long as the servers are doing well, the user might not see the sticky session problem; however, under an overloaded condition or a hung or frozen server, the client could end up getting a new session due to the sticky session failure.

 http://bbs.middleware123.com/thread-15065-1-1.html

    Can you cross verify your mod_wl_ohs.conf configuration and ensure that you have the correct IP and port configured?Also,please ensure that the weblogic server is running correctly.
    Enable idempotent to ON.
    Also,please try accessing the WLS console by proxying through the OHS server.
    This would tell you if the issue is specifically while accessing forms application alone or with any other app.
    Please have a look at the OHS log files too to see the exact error that you see in there.
    -Sandeep

http://soft.zdnet.com.cn/software_zone/2007/1004/535471.shtml

 

 

ConnectRetrySecs

2

參數以秒為單位,設置了兩次Weblogic Server主機(或集群中的所有服務器)連接嘗試之間,插件的休眠時間。該參數的值應該小於ConnectTimeoutSecs。插件在返回HTTP 503/Service Unavailable響應之前,它將進行的連接次數為ConnectTimeoutSecs除以ConnectRetrySecs所得的值。
如果不希望重試連接,那么應該將ConnectRetrySecs值應該與ConnectTimeoutSecs相等。不過,插件會至少進行兩次連接嘗試。
可以用ErrorPage參數定制錯誤響應。

Debug

OFF

設置調試操作時的日志類型。在生產系統中不建議你開啟這些調試選項。
在UNIX系統中,調試信息被寫到/tmp/wlproxy.log文件中;在Windows NT系統,調試信息被寫到c:tempwlproxy.log文件中,通過WLLogFile參數,你可以使用其他路徑下的其他文件覆蓋文件名、路徑參數。你可以設置以下日志選項(其中HFC, HTW, HFW, HTC可以聯合使用,它們之間用逗號隔開,如"HFC, HTW");
ON 
  插件只記錄報告性消息與錯誤消息
OFF
  不記錄調試信息
HFC 
  記錄來自客戶端消息、報告性消息以及錯誤消息的消息頭。
HTW 
  記錄從Weblogic發送來的消息頭,報告性消息與錯誤消息 
HFW 
  記錄來自Weblogic服務器消息的消息頭,報告性消息與錯誤消息
HTC
  記錄發送到客戶端消息的消息頭,報告性消息與錯誤消息
ALL 
  記錄發送到客戶端以及客戶端發送的消息的頭,發送到Weblogic服務器以及Weblogic服務器發送的消息頭,報告性消息,錯誤消息

WLLogFile

參見Debug參數

指明當Debug參數為ON時,產生日志文件的路徑和文件名,在設置該參數前,必須創建相應目錄。

DebugConfigInfo

OFF

啟用特殊查詢參數"_WeblogicBridgeConfig"。該參數可以被用來了解插件的配置參數的細節。
例如,如果把DebugConfigInfo設置為ON,那么"_WeblogicBridgeConfig"被啟用。發送一個包含查詢字符串?_WeblogicBridgeConfig的請求,插件將收集配置信息有運行時的統計信息並將這些信息返回給瀏覽器。在處理該請求時,插件沒有連接到Weblogic服務器。
參數只應嚴格用於調試目的。消息的輸出格式隨版本的變化而不同。為了安全起見,在生產環境中應該將該參數設置為OFF。

StatPath(Microsoft Internet Information Server 插件沒有這個參數。)

false

如果把該參數設置為真,插件在把請求傳遞到Weblogic服務器之前檢查被轉換的路徑是否存在或及其訪問權限("Proxy-Path-Translated")。如果文件不存在,將把HTTP 404 File Not Found響應返回給客戶端。如果文件存在,但它的權限不是world-readable,那么將返回HTTP 403/Forbidden響應。這兩種情況下Web服務器處理這些響應的缺省機制是執行響應的體內容。如果Weblogic服務器的Web應用與Web服務器具有相同的文檔根,那么該選項非常有用。
可以使用ErrorPage參數定制錯誤響應。

ErrorPage

none

可以制作自己的錯誤響應頁面,在Web服務器不能將請求代理到Weblogic服務器時使用。
設置該參數的方式有兩種:

  • 作為相對URI(文件名)。插件自動將返回錯誤的Web應用的上下文路徑加到URI中。對錯誤頁面的請求是否回代理到Weblogic服務器取決於你對代理的配置(是MIME類型式代理還是路徑式代理)。
  • 作為絕對URI(建議)。使用錯誤頁面的絕對路徑能夠使請求總是被代理到Weblogic服務器中的正確資源上。例如:http://host:port/myWebApp/ErrorPage.html

HungServerRecoverSecs

300

定義了插件等待Weblogic服務器響應請求的時間。在等待了HungServerRecoverSecs時間后,插件還沒有得到服務器的響應,那么它將宣布該服務器已經死機並失敗轉移到下一個服務器。應該把該參數設置為一個較大的值。如果所設置的值小於servlets進行處理的時間,那么會得到意想不到的后果。
最小值為:10
最大值為:600

Idempotent

ON

如果該參數設置為ON,那么當服務器在指定的HungServerRecoverSecs時間沒有響應,那么插件將進行容錯處理。如果設置為OFF,插件將不進行失敗轉移。如果所使用的是Netscape Enterprise Server插件或Apache HTTP Server插件,不同的URL與MIME類型可以有不同的Idempotent參數設置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM