數據加載中……
          c3p0
          1樓   2008-10-18

          在使用C3P0的過程中出現了好多錯誤.最長見就是死鎖,占用資源比較大.

          對于死鎖問題http://japi.javaeye.com/blog/243702.找到了解決方案(不能完全保證,但在負載測試中,還沒有出現問題)

          問題關鍵是參數的設置
          引用

          <!--JDBC的標準參數,用以控制數據源內加載的PreparedStatements數量。但由于預緩存的statements
          屬于單個connection而不是整個連接池。所以設置這個參數需要考慮到多方面的因素。
          如果maxStatements與maxStatementsPerConnection均為0,則緩存被關閉。Default: 0-->
          <property name="maxStatements">100</property>

          <!--maxStatementsPerConnection定義了連接池內單個連接所擁有的最大緩存statements數。Default: 0 -->
          <property name="maxStatementsPerConnection"></property>


          解決的方法是:
          引用
          In hibernate.cfg.xml:
          <property name="hibernate.c3p0.max_statements">0</property> 


          In c3p0.properties:
          c3p0.maxStatements=0
          c3p0.maxStatementsPerConnection=100

          來源于:http://forum.hibernate.org/viewtopic.php?p=2386237
          http://forum.hibernate.org/viewtopic.php?t=947246&start=0&postdays=0&postorder=asc&highlight=apparent+deadlock+c3p0&sid=6fcfab70cff3588bf010914df8dbbb90

          http://www.mchange.com/projects/c3p0/index.html#c3p0_properties
          2樓  LifeFree 2009-05-04

          唉,早看到別人說要maxStatements設置為0,就是沒怎么用c3p0,不知道具體情況。
          前段時間在一個事務里多加了條sql語句,原來并發沒問題的,后來發現性能很低。查了很久才發現是死鎖了,又搞了很久才想到是c3p0的問題。

          posted on 2009-12-27 18:23 jeter123 閱讀(616) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 内黄县| 娄底市| 东海县| 平陆县| 兴化市| 团风县| 磐安县| 博乐市| 大安市| 呈贡县| 正阳县| 罗甸县| 交口县| 屏东市| 五原县| 阿鲁科尔沁旗| 嘉禾县| 南乐县| 亳州市| 舒城县| 正宁县| 双牌县| 日照市| 昆山市| 图片| 兴山县| 新民市| 三原县| 孟津县| 保亭| 临泽县| 达拉特旗| 稻城县| 明水县| 河北省| 张家港市| 扶风县| 中超| 五台县| 潜山县| 什邡市|