2015-05-19 3 views
2

Я использую dropwizard с сервером базы данных Mysql. Максимальное значение соединения для этого сервера равно 32, для каждой выборки число активных соединений увеличивается, и как только оно достигает 32, я получаю исключение PoolExhaustedException.PoolExhaustedException в сервере Dropwizard

Обратите внимание, что я только открываю и закрываю сеанс при необходимости и создаю соединение только один раз. Также Ниже приведены некоторые из конфигураций БД в моей YAML

database: 
# the name of your JDBC driver 
driverClass: com.mysql.jdbc.Driver 

    # the username 
user: root 

# the JDBC URL 
    url: jdbc:mysql://localhost:3306/deploys?autoReconnect=true? 

    # any properties specific to your JDBC driver: 
    properties: 
    charSet: UTF-8 
    hibernate.dialect: org.hibernate.dialect.MySQLDialect 
    hibernate.hbm2ddl.auto: update 
    hibernate.show_sql: true 

    # the maximum amount of time to wait on an empty pool before throwing an exception 
    maxWaitForConnection: 1s 

    # the SQL query to run when validating a connection's liveness 
    validationQuery: "/* MyApplication Health Check */ SELECT 1" 

    # the minimum number of connections to keep open 
    minSize: 8 

    # the maximum number of connections to keep open 
    maxSize: 32 

    # whether or not idle connections should be validated 
    checkConnectionWhileIdle: false 

    #Whether or not connections will be validated before being borrowed from the pool. If the connection fails to validate, it will be dropped from the pool, and another will be borrowed. 
    checkConnectionOnBorrow: true 

Не уверен, что идет о, но если autorecoonect быть ложным? Или существует конфликтование, чтобы убивать соединения отказов из пула соединений?

ответ

0

Попробуйте увеличить значение maxWaitForConnection.

Смежные вопросы