2017-04-11 7 views
0

私はSpringブートアプリケーション(バージョン1.5.1.RELEASE)を持っており、データベースを管理するために依存性としてspring-boot-starter-data-jpaを使用しています。私は自分のデータベースとしてpostgresを使用しており、以下のプロパティを使って設定しています。私はほとんど120です私のテストを実行すると、テストケース自体の起動時にspring boot datasource tomcat jdbcのプロパティが動作しない

spring.datasource.url=${POSTGRES_URL} 
spring.datasource.username=${POSTGRES_USER} 

は今、私はアボ10のテストケースのためにあまりにも多くのクライアントすでにオープンエラーを取得し、それが失敗した。(残り100テストケースはとして成功を収めて渡します

私が最初にやったことは、postgresサーバの設定ファイルで、私のデフォルトのpostgresの最大接続数が100から200に増え、この変更後にテストが正常に成功したことです。

は今、私は少しを調査し、のような性質接続プール用のパラメータ設定しようとした:これらのプロパティは動作しないとテストが再び上記と同じエラーを与える失敗しかし

spring.datasource.tomcat.max-active=200 
spring.datasource.tomcat.test-on-borrow=true 
spring.datasource.tomcat.max-wait=10000 

を。私は接続プールのプロパティを設定するための複数の異なるブログや春のドキュメントを読んでみましたが、私に間違っているかもしれないものは見つかりませんでした。

上記のプロパティーをspring.datasource.tomcat.max-activeに100接続すると、tomcat jdbc poolingの助けを借りて動作するはずだと思います。現在のシナリオでは、テストケースごとにデータベースへの新しい接続を開こうとしています。このコードをプロダクション環境にデプロイし、各要求ごとに新しい接続がデータベースに開かれるときに、この同じシナリオが発生する可能性があるという恐れがあります。

誰もこの前にこの問題に直面しているか、私がやっている何か悪いことがありますか?

ご協力いただきありがとうございます。

+0

いただきましたか?あなたのデータベースを使用している他のアプリケーションはありますか? DBパースペクティブからチェックする方が良い/データベース内の接続数、接続の漏れを監視する間違ったapplication.propertiesの結論にジャンプする前に。 –

+0

セッションが正しく終了していることを確認してください。 – rajadilipkolli

+0

@vivekは、hibernate ormを使用しています –

答えて

0

スプリングブートバージョンを試してみてください。1.5.10-RELEASEが最新バージョンです。

また、プロパティプレフィックスtomcatが含まれていた場合、アプリケーションの接続プールプロパティが適用されていないことがわかりました。それでも問題が解決しない場合は、削除してください。

すなわち

spring.datasource.tomcat.max-active=200

spring.datasource.max-active=200

になり、データベースで構成された最大接続数であるhttps://artofcode.wordpress.com/2017/10/19/spring-boot-configuration-for-tomcats-pooling-data-source

関連する問題