yxhxj2006

          常用鏈接

          統(tǒng)計(jì)

          最新評(píng)論

          WebLogic設(shè)置session超時(shí)時(shí)間

          說明:本文轉(zhuǎn)載自http://hi.baidu.com/%BF%AA%D0%C4%BE%CD%BA%C3_999/blog/item/cbc81c4a9666d32608f7efd7.html


          2008年06月05日 星期四 21:23

          WebLogic如何設(shè)置session超時(shí)時(shí)間
          1 web.xml

          設(shè)置WEB應(yīng)用程序描述符web.xml里的<session-timeout>元素。這個(gè)值以分鐘為
          單位,并覆蓋weblogic.xml中的TimeoutSecs屬性
          <session-config>
              <session-timeout>54</session-timeout>
          </session-config>
          此例表示Session將在54分鐘后過期
          當(dāng)<session-timeout>設(shè)置為-2,表示將使用在weblogic.xml中設(shè)置的
          TimeoutSecs這個(gè)屬性值。
          當(dāng)<session-timeout>設(shè)置為-1,表示Session將永不過期,而忽略在
          weblogic.xml中設(shè)置的TimeoutSecs屬性值。
          該屬性值可以通過console控制臺(tái)來設(shè)置

          2 weblogic.xml

          設(shè)置WebLogic特有部署描述符weblogic.xml的<session-descriptor>元素的
          TimeoutSecs屬性。這個(gè)值以秒為單位
          <session-descriptor>
             <session-param>
                <param-name>TimeoutSecs</param-name>
                <param-value>3600</param-value>
             </session-param>
          </session-descriptor>
          默認(rèn)值是3600秒

          3,jsp中控制
          session.setmaxinactiveinterval(7200);
          session是默認(rèn)對(duì)象,可以直接引用,單位秒s

          4,servlet中控制
          httpsession session = request.getsession();
          session.setmaxinactiveinterval(7200);
          單位秒s

          在weblgoic的console中:xxDomain->Servers->xxServer->Protocols->HTTP 中有一個(gè)關(guān)于Post Timeout的配置,但這個(gè)參數(shù)一般使用默認(rèn)值即可

          一般是通過Services-->JDBC-->Connection Pools-->MyConnection(你所建立的連接池名)-->Configration-->Connections 里的Inactive Connection Timeout這個(gè)參數(shù)來設(shè)置的,默認(rèn)的為0,表示連接時(shí)間無限長(zhǎng)。你可以設(shè)一個(gè)時(shí)間值,連接超過這個(gè)時(shí)間值,它會(huì)把連接強(qiáng)制放回連接池

          <Server AcceptBacklog="62" CompleteHTTPMessageTimeout="480"
          CompleteMessageTimeout="480" IdleConnectionTimeout="600"
          ListenAddress="" ListenPort="7001" Name="myserver"
          NativeIOEnabled="true" ReliableDeliveryPolicy="RMDefaultPolicy"
          ServerVersion="8.1.4.0">
          是否IdleConnectionTimeout參數(shù)

          看連接池中高級(jí)選項(xiàng)內(nèi)的Inactive Connection Timeout和Connection Reserve Timeout時(shí)多少, 把這兩項(xiàng)設(shè)大些試試

          如果在兩個(gè)文件中同時(shí)設(shè)置了超時(shí)時(shí)間,則會(huì)以web.xml中為準(zhǔn)。
          所以在weblogic環(huán)境中,最好將web.xml中關(guān)于超時(shí)的設(shè)置刪掉,保持唯一性。
          這也是一個(gè)客戶發(fā)現(xiàn)了問題后,多次實(shí)驗(yàn)后發(fā)現(xiàn)的。

           

           

           

          如果使用WEBLOGIC作為應(yīng)用服務(wù)器,設(shè)置SESSION超時(shí)時(shí)間會(huì)選擇在WEBLOGIC的控制臺(tái)設(shè)定。實(shí)際上,WEBLOGIC是將超時(shí)設(shè)定保存在WEB-INF下的weblogic.xml中,格式如下:
          <session-descriptor>
              <session-param>
                <param-name>TimeoutSecs</param-name>
                <param-value>7200</param-value>
              </session-param>
          </session-descriptor>
          param-value中的數(shù)值就是超時(shí)時(shí)間,單位為秒。在設(shè)置完這個(gè)參數(shù)后,會(huì)發(fā)現(xiàn)超時(shí)時(shí)間并一定起效。這是為什么呢?
          原來在WEB-INF下還有一個(gè)配置文件web.xml,里面同樣會(huì)有一段設(shè)置session,格式如下:

          <session-config>

              <session-timeout>30</session-timeout>

          </session-config>
          session-timeout中的值也是超時(shí)時(shí)間,單位為分鐘。
          如果在兩個(gè)文件中同時(shí)設(shè)置了超時(shí)時(shí)間,則會(huì)以web.xml中為準(zhǔn)。
          所以在weblogic環(huán)境中,最好將web.xml中關(guān)于超時(shí)的設(shè)置刪掉,保持唯一性。

          這也是一個(gè)客戶發(fā)現(xiàn)了問題后,多次實(shí)驗(yàn)后發(fā)現(xiàn)的。

           

           

          今天上午聯(lián)創(chuàng)科技的一個(gè)朋友問題一個(gè)他們的問題.出現(xiàn)大量的:

          ueue: ‘billproxyqueue’ has been busy for “727″ seconds working on the request “Http Request: /bill/y
          nQueryPublic.go”, which is more than the configured time (StuckThreadMaxTime) of “600″ seconds.>

          一看明顯是連接超時(shí), 導(dǎo)致的錯(cuò)誤.

          1. 程序問題,是不是程序中沒有關(guān)閉連接
          2. 如果程序沒問題,則是weblogic的StuckThreadMaxTime設(shè)置過小而引起的,一般weblogic server 的StuckThreadMaxTime默認(rèn)參數(shù)是600s,即10分鐘,如果并發(fā)量過大,而導(dǎo)致等待處理過多,導(dǎo)致系統(tǒng)不停的增加線程,造成線程阻塞,你可以把該參數(shù)設(shè)置大點(diǎn)這個(gè)是稍微調(diào)大StuckThreadMaxTime的參數(shù)即可.
          3. 看線程數(shù)設(shè)置,可適當(dāng)增加線程數(shù),這個(gè)在WLS控制臺(tái)中可以調(diào)整

          posted on 2013-12-06 12:27 奮斗成就男人 閱讀(307) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 方城县| 民勤县| 松溪县| 清河县| 株洲市| 呼玛县| 木里| 东乡县| 临湘市| 陵水| 阳原县| 静乐县| 南丹县| 荣昌县| 什邡市| 淮阳县| 三亚市| 长泰县| 霍山县| 锡林浩特市| 周至县| 黑水县| 平邑县| 浮山县| 黄龙县| 兴化市| 榆中县| 芦溪县| 新闻| 太和县| 华宁县| 集安市| 修文县| 横山县| 乌兰浩特市| 舞钢市| 惠州市| 竹溪县| 吉首市| 瑞昌市| 莱阳市|