powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Создаётся много подключений к бд в пуле
17 сообщений из 17, страница 1 из 1
Создаётся много подключений к бд в пуле
    #39632820
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал тест пула от tomcat:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DataBasePool dataBasePool = DataBasePool.getInstance();

        for(int i=0;i<1000;i++) {
            try {
                new StressTestThread(dataBasePool.getConnection()).start();
                dataBasePool.showInfo();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
public class StressTestThread extends Thread {

    private Connection connection;

    public StressTestThread(Connection connection) {
        this.connection = connection;
    }

    @Override
    public void run() {
        PreparedStatement st = null;
        ResultSet rs = null;
        try {

            st = connection.prepareStatement("select * from user");

            rs = st.executeQuery();

            while (rs.next()) {
                //System.out.println("THREAD ID "+Thread.currentThread().getId()+". USER - "+rs.getString("email"));
            }

        } catch (SQLException e) {
            e.printStackTrace();

        } finally {

            try  {
                if(rs!=null && !rs.isClosed()) {
                    rs.close();
                }
            } catch (Exception e) { }

            try  {
                if(st!=null && !st.isClosed()) {
                    st.close();
                }
            } catch (Exception e) { }

            try {
                if (connection != null && !connection.isClosed()) {
                    connection.close();
                }
            } catch (Exception ignore) {}
        }

    }
}



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
public class DataBasePool {

    private static Logger LOGGER;

    private static DataSource dataSource;

    private static DataBasePool ourInstance = new DataBasePool();

    public static DataBasePool getInstance() {
        return ourInstance;
    }

    private DataBasePool() {

        LOGGER = LogManager.getLogger(DataBasePool.class);

        LOGGER.info("DATA SOURCE INIT");

        PoolProperties poolProperties = new PoolProperties();
        poolProperties.setUrl("jdbc:mysql://localhost:3306/tsyklop");
        poolProperties.setDriverClassName("com.mysql.jdbc.Driver");
        poolProperties.setUsername("root");
        poolProperties.setPassword("pwd");
        poolProperties.setValidationQuery("SELECT 1");
        poolProperties.setInitialSize(10);
        poolProperties.setRemoveAbandonedTimeout(60);
        poolProperties.setLogAbandoned(true);
        poolProperties.setRemoveAbandoned(true);

        poolProperties.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");

        dataSource = new DataSource(poolProperties);

    }

    public static DataSource getDataSource() {
        return dataSource;
    }

    public Connection getConnection() throws SQLException {
        return dataSource.getConnection();
    }
    public void showInfo() {
        LOGGER.info("IDLE - "+dataSource.getIdle()+" ACTIVE - "+ dataSource.getActive());
    }

}



Создаю потоки в которых делается запрос к бд. В логах происходит такое.



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
2018-04-18 20:10:47.744 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 0
2018-04-18 20:10:47.748 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 1
2018-04-18 20:10:47.750 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 2
2018-04-18 20:10:47.752 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 2
2018-04-18 20:10:47.754 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 2
2018-04-18 20:10:47.755 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 3
2018-04-18 20:10:47.756 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 3
2018-04-18 20:10:47.758 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 4
2018-04-18 20:10:47.761 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 3
2018-04-18 20:10:47.764 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 2
2018-04-18 20:10:47.765 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 3
2018-04-18 20:10:47.765 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 4
2018-04-18 20:10:47.766 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 5
2018-04-18 20:10:47.772 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 4
2018-04-18 20:10:47.773 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 5
2018-04-18 20:10:47.775 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 4
2018-04-18 20:10:47.777 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 5
2018-04-18 20:10:47.778 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 6
2018-04-18 20:10:47.779 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 7
2018-04-18 20:10:47.780 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 8
2018-04-18 20:10:47.786 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 7
2018-04-18 20:10:47.787 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 8
2018-04-18 20:10:47.789 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 9
2018-04-18 20:10:47.790 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 7
2018-04-18 20:10:47.791 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 8
2018-04-18 20:10:47.792 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 9
2018-04-18 20:10:47.793 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 10
2018-04-18 20:10:47.797 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 8
2018-04-18 20:10:47.798 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 9
2018-04-18 20:10:47.798 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 10
2018-04-18 20:10:47.809 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 2
2018-04-18 20:10:47.810 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 3
2018-04-18 20:10:47.811 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 4
2018-04-18 20:10:47.811 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 5
2018-04-18 20:10:47.812 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 6
2018-04-18 20:10:47.812 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 7
2018-04-18 20:10:47.813 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 8
2018-04-18 20:10:47.813 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 8
2018-04-18 20:10:47.814 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 9
2018-04-18 20:10:47.814 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 10
2018-04-18 20:10:47.819 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 11
2018-04-18 20:10:47.825 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 9
2018-04-18 20:10:47.828 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 10
2018-04-18 20:10:47.830 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 11
2018-04-18 20:10:47.830 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 12
2018-04-18 20:10:47.842 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 1
2018-04-18 20:10:47.843 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 2
2018-04-18 20:10:47.844 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 3
2018-04-18 20:10:47.845 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 4
2018-04-18 20:10:47.847 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 4
2018-04-18 20:10:47.849 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 1
2018-04-18 20:10:47.850 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 2
2018-04-18 20:10:47.850 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 2
2018-04-18 20:10:47.851 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 2
2018-04-18 20:10:47.851 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 2
2018-04-18 20:10:47.852 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 3
2018-04-18 20:10:47.852 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 4
2018-04-18 20:10:47.852 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 5
2018-04-18 20:10:47.853 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 5
2018-04-18 20:10:47.853 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 6
2018-04-18 20:10:47.854 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 6
2018-04-18 20:10:47.854 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 6
2018-04-18 20:10:47.854 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 4
2018-04-18 20:10:47.855 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 5
2018-04-18 20:10:47.855 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 6
2018-04-18 20:10:47.856 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 6
2018-04-18 20:10:47.856 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 6
2018-04-18 20:10:47.857 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 7
2018-04-18 20:10:47.857 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 8
2018-04-18 20:10:47.858 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 9
2018-04-18 20:10:47.858 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 10
2018-04-18 20:10:47.859 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 11
2018-04-18 20:10:47.859 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 12
2018-04-18 20:10:47.859 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 13
2018-04-18 20:10:47.872 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 13 ACTIVE - 1
2018-04-18 20:10:47.873 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 2
2018-04-18 20:10:47.873 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 3
2018-04-18 20:10:47.874 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 4
2018-04-18 20:10:47.874 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 5
2018-04-18 20:10:47.874 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 6
2018-04-18 20:10:47.875 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 7
2018-04-18 20:10:47.875 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 8
2018-04-18 20:10:47.876 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 9
2018-04-18 20:10:47.876 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 10
2018-04-18 20:10:47.877 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 11
2018-04-18 20:10:47.877 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 12
2018-04-18 20:10:47.878 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 13
2018-04-18 20:10:47.880 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 14
2018-04-18 20:10:47.887 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 14 ACTIVE - 1
2018-04-18 20:10:47.888 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 13 ACTIVE - 2
2018-04-18 20:10:47.888 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 3
2018-04-18 20:10:47.888 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 4
2018-04-18 20:10:47.890 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 5
2018-04-18 20:10:47.891 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 4
2018-04-18 20:10:47.891 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 3
2018-04-18 20:10:47.892 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 3
2018-04-18 20:10:47.892 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 4
2018-04-18 20:10:47.892 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 4
2018-04-18 20:10:47.893 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 5
2018-04-18 20:10:47.893 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 6
2018-04-18 20:10:47.894 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 7
2018-04-18 20:10:47.895 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 7
2018-04-18 20:10:47.895 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 8
2018-04-18 20:10:47.896 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 9
2018-04-18 20:10:47.896 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 10
2018-04-18 20:10:47.897 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 11
2018-04-18 20:10:47.897 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 12
2018-04-18 20:10:47.898 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 13
2018-04-18 20:10:47.898 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 14
2018-04-18 20:10:47.899 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 15
2018-04-18 20:10:47.903 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 16
2018-04-18 20:10:47.906 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 17
2018-04-18 20:10:47.909 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 17
2018-04-18 20:10:47.911 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 18
2018-04-18 20:10:47.915 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 19
2018-04-18 20:10:47.918 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 20
2018-04-18 20:10:47.921 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 21
2018-04-18 20:10:47.924 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 19
2018-04-18 20:10:47.924 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 19
2018-04-18 20:10:47.925 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 20
2018-04-18 20:10:47.925 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 20
2018-04-18 20:10:47.925 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 21
2018-04-18 20:10:47.926 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 22
2018-04-18 20:10:47.930 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 21
2018-04-18 20:10:47.930 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 22
2018-04-18 20:10:47.931 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 22
2018-04-18 20:10:47.931 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 23
2018-04-18 20:10:47.938 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 21
2018-04-18 20:10:47.939 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 21
2018-04-18 20:10:47.939 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 21
2018-04-18 20:10:47.939 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 22
2018-04-18 20:10:47.945 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 22
2018-04-18 20:10:47.947 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 23
2018-04-18 20:10:47.947 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 22
2018-04-18 20:10:47.948 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 23
2018-04-18 20:10:47.948 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 23
2018-04-18 20:10:47.949 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 24
2018-04-18 20:10:47.952 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 20
2018-04-18 20:10:47.952 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 20
2018-04-18 20:10:47.953 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 21
2018-04-18 20:10:47.953 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 21
2018-04-18 20:10:47.953 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 22
2018-04-18 20:10:47.954 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 23
2018-04-18 20:10:47.954 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 24
2018-04-18 20:10:47.955 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 25
2018-04-18 20:10:48.155 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 15
2018-04-18 20:10:48.156 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 16
2018-04-18 20:10:48.156 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 17
2018-04-18 20:10:48.156 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 18
2018-04-18 20:10:48.157 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 19
2018-04-18 20:10:48.162 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 20
2018-04-18 20:10:48.163 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 21
2018-04-18 20:10:48.163 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 22
2018-04-18 20:10:48.164 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 23
2018-04-18 20:10:48.164 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 2 ACTIVE - 24
2018-04-18 20:10:48.165 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 1 ACTIVE - 25
2018-04-18 20:10:48.167 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 26
2018-04-18 20:10:48.208 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 27
2018-04-18 20:10:48.216 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 28
2018-04-18 20:10:48.224 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 29
2018-04-18 20:10:48.230 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 30
2018-04-18 20:10:48.235 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 31
2018-04-18 20:10:48.239 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 32
2018-04-18 20:10:48.243 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 33
2018-04-18 20:10:48.248 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 34
2018-04-18 20:10:48.262 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 35
2018-04-18 20:10:48.267 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 36
2018-04-18 20:10:48.279 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 0 ACTIVE - 37
2018-04-18 20:10:48.408 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 34 ACTIVE - 4
2018-04-18 20:10:48.408 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 34 ACTIVE - 4
2018-04-18 20:10:48.409 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 33 ACTIVE - 5
2018-04-18 20:10:48.409 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 33 ACTIVE - 5
2018-04-18 20:10:48.411 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 32 ACTIVE - 6
2018-04-18 20:10:48.411 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 31 ACTIVE - 7
2018-04-18 20:10:48.412 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 30 ACTIVE - 8
2018-04-18 20:10:48.413 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 29 ACTIVE - 9
2018-04-18 20:10:48.415 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 28 ACTIVE - 10
2018-04-18 20:10:48.440 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 27 ACTIVE - 11
2018-04-18 20:10:48.440 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 26 ACTIVE - 12
2018-04-18 20:10:48.441 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 25 ACTIVE - 13
2018-04-18 20:10:48.442 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 24 ACTIVE - 14
2018-04-18 20:10:48.450 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 23 ACTIVE - 15
2018-04-18 20:10:48.451 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 22 ACTIVE - 16
2018-04-18 20:10:48.452 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 21 ACTIVE - 17
2018-04-18 20:10:48.452 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 20 ACTIVE - 18
2018-04-18 20:10:48.453 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 19 ACTIVE - 19
2018-04-18 20:10:48.454 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 18 ACTIVE - 20
2018-04-18 20:10:48.454 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 17 ACTIVE - 21
2018-04-18 20:10:48.454 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 16 ACTIVE - 22
2018-04-18 20:10:48.455 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 15 ACTIVE - 23
2018-04-18 20:10:48.455 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 14 ACTIVE - 24
2018-04-18 20:10:48.456 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 13 ACTIVE - 25
2018-04-18 20:10:48.456 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 12 ACTIVE - 26
2018-04-18 20:10:48.456 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 11 ACTIVE - 27
2018-04-18 20:10:48.457 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 10 ACTIVE - 28
2018-04-18 20:10:48.458 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 9 ACTIVE - 29
2018-04-18 20:10:48.458 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 8 ACTIVE - 30
2018-04-18 20:10:48.464 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 7 ACTIVE - 31
2018-04-18 20:10:48.464 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 6 ACTIVE - 32
2018-04-18 20:10:48.464 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 5 ACTIVE - 33
2018-04-18 20:10:48.465 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 4 ACTIVE - 34
2018-04-18 20:10:48.465 [INFO] [thread-id 39] com.tsyklop.database.pool.DataBasePool.showInfo(DataBasePool.java:71) - IDLE - 3 ACTIVE - 35





При том если я буду запускать это несколько раз то количество подключений будет расти и расти, а не использоваться уже существующие. Может быть я сделал фиговый тест. Ежели так - поправьте пожалуйста.

Почему так происходит?
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632833
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня так работает нормально
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
import org.apache.tomcat.jdbc.pool.DataSource;
import org.apache.tomcat.jdbc.pool.PoolProperties;

public class Singleton_ {

    public static DataSource dataSource;
    private static Object ourInstance;
    private static String BASE;
    private static String BASE_LOGIN;
    private static String BASE_PASSWORD;

    public static void getOurInstance(String path) {
        if (ourInstance == null) {

            ourInstance = new Singleton_();

            setdataSource();
        }
    }

    private static void setdataSource() {
        PoolProperties pp = new PoolProperties();
        pp.setDriverClassName("com.mysql.cj.jdbc.Driver");
        pp.setUrl(BASE);
        pp.setUsername(BASE_LOGIN);
        pp.setPassword(BASE_PASSWORD);
        pp.setInitialSize(50);
        pp.setMaxActive(500);
        pp.setMaxIdle(50);
        pp.setMinIdle(10);
        pp.setMaxWait(10000);
        pp.setRemoveAbandoned(true);
        pp.setRemoveAbandonedTimeout(10);
        pp.setSuspectTimeout(40);
        pp.setTimeBetweenEvictionRunsMillis(1000);
        pp.setMinEvictableIdleTimeMillis(2000);
        dataSource = new DataSource();
        dataSource.setPoolProperties(pp);

    }

}



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public void yyy(String param, Session userSession) {
        try (Connection con = dataSource.getConnection();
                CallableStatement proc = con.prepareCall("{call page4_yyy31()}")) {
            rs = proc.executeQuery();
            rs.next();
            userSession.getBasicRemote().sendText(String.format("yyy31|xxxxxx"));
        } catch (SQLException | IOException ex) {
            ex.printStackTrace();
        }
    }
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632834
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дока говорит, что maxActive по умолчанию 100, так что вроде нормально все выглядит.
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632837
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklop...
Почему так происходит?
Х.з. Но как минимум нигде не увидел что бы задавалось свойство аналогичное WebLogick'овскому "Maximum Capacity"

был бы "Maximum Capacity" то больше чем указано, connection pool бы не отъедал

а так, может когда и освободит.... что бы точно ответить почему. это нужно брать Ваш пример, запускать и трассировать

TsyklopМожет быть я сделал фиговый тест.

как минимум нет никакого sleep между запусками потоков, все потоки одновременно, т.ч. выделить сразу до 1 000 соединений - вполне имеет право

в общем, тест сильно синтетический IMHO
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632839
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander A. SakДока говорит, что maxActive по умолчанию 100, так что вроде нормально все выглядит.где бы толковое описание, желательно на русском
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632840
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexander A. SakДока говорит, что maxActive по умолчанию 100, так что вроде нормально все выглядит.

в том и дело что нет. Все логи не влезли... было и 101.

Ну в общем. Я в принципе понял что за штука. Раньше я использовал QuerryRunner который сам закрывает соединение после каждого запроса, а без него я соединение закрывал (возвращал в пул) но поздно. Может не совсем удачный тест.
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632842
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадягде бы толковое описание, желательно на русском

Ну я нашел на их офф сайте и перевл мне гугл. Вроде как перевел нормально.
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632847
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TsyklopНу я нашел на их офф сайте и перевл мне гугл. Вроде как перевел нормально.
знаю я как он переводит...
тут надо что на что влияет и прочее
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39632867
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TsyklopСоздаю потоки в которых делается запрос к бд.один коннект на поток не выходит?
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633023
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может я чего не понимаю или проглядел? У ТС в коде нигде не указано ограничение сверху по кол-ву.

initialSize - The initial number of connections that are created when the pool is started. Default value is 10

соответственно пул создает столько, сколько считает нужным в зависимости от своей внутренней логики.
сверху его ограничивает maxIdle (сколько всего можно и меть в пуле) по умолчанию равный maxActive

P. S. и к чему вообще этот "тест" - проверка пула на вшивость или что? Надо понимать на это время и средства нашлись
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633027
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaсверху его ограничивает maxIdle (сколько всего можно и меть в пуле) по умолчанию равный maxActive
хотя если посмотреть на примеры и еще раз вчитаться, maxActive и maxIdle вообще только в сумме!? ограничивают общее кол-во коннектов, например maxActive="20" maxIdle="10"
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633032
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо смотреть не на примеры, а на доку
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633041
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsevнадо смотреть не на примеры, а на доку
если ты носитель языка и дока написана однозначно, как таблица умножения - то возможно. официальные примеры позволяет избежать ошибок в трактовке и часто говорят больше чем слова
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633054
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha....maxActive и maxIdle вообще только в сумме!? ограничивают общее кол-во коннектов, например maxActive="20" maxIdle="10"....
данная фраза лично меня ставит в ступор

chpashaофициальные примеры позволяет избежать ошибок в трактовке
официальные примеры часто такой бред.... что тушите свет (недавно смотрел example от QT, волосы дыбом встали, стюденты которые их писали, .H файлы от .C файлов не отличают, жуть; в Oracle Forms тоже знаю официальные примеры, которые доказывают прямо противоположное тому, что происходит на самом деле)

дока и еще раз дока - единственная последняя инстанция. что бы определить, наблюдаемое поведение это бага или фича. Если есть в доке - то фича, если в доке написано прямо противоположное - то бага

Избежать ошибок в трактовки доки - только методом просмотра или трассировки исходного кода самой библиотеки. Примеры, официальные или нет - глубоко пофиг.

IMHO

например, поведение о котором говорит ТС:

[quote]
Alexander A. Sak
Дока говорит, что maxActive по умолчанию 100, так что вроде нормально все выглядит.

в том и дело что нет. Все логи не влезли... было и 101.
[/qoute]
Считать превышение maxActive на 1 багой или нет.... - лично я не знаю

вроде это не очень корректно, с другой стороны, возможно реализация такова, что на том синтетической нагрузке которую подает автор, в _конкретной_ реализации пула это допустимое (документированное) поведение. Но это нужно аккуратно читать всю документацию по конкретной реализации пула или даже смотреть сорцы и трассировать.

IMHO
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633062
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsevофициальные примеры часто такой бред.
а доку-то, доку кто пишет, господь бог?

Leonid KudryavtsevИзбежать ошибок в трактовки доки - только методом просмотра или трассировки исходного кода самой библиотеки
т.е. концепция поменялась, теперь нужно смотреть исходники, а не доку читать. с этим не поспоришь - исходник не обманет ;)

Leonid KudryavtsevСчитать превышение maxActive на 1 багой или нет.... - лично я не знаю
дока-то и устареть могла, а ТС максимум явно не задавал. это уже отвлекаясь от того, что могут быть банально разные версии доки/либы или неправильная интерпретация увиденного.
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633165
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaLeonid Kudryavtsevофициальные примеры часто такой бред.
а доку-то, доку кто пишет, господь бог?

Дока это _официальный_документ_. И, обычно, дока пишется не по "результату", а на основе ТЗ (технического задания)

Если в доке написано, что должно работать так, а на деле работает иначе - это повод считать поведение багом и смело обрашаться в поддержку с просьбой его устранить (а заодно еще и отчитаться начальству "поставленная работа не может быть выполнена, т.к. в используемом средстве баги").

chpashaLeonid KudryavtsevИзбежать ошибок в трактовки доки - только методом просмотра или трассировки исходного кода самой библиотеки
т.е. концепция поменялась, теперь нужно смотреть исходники

Ничего НЕ менялось.

СНАЧАЛА читаем доку (соответствующей версии), потом, если есть поддержка и/или доступ к нотам компании-разработчика, ноты. В крайнем случае, лезим в исходный код.
...
Рейтинг: 0 / 0
Создаётся много подключений к бд в пуле
    #39633194
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevДока это _официальный_документ_
какой официальный документ в опенсоурсной либе, с докой сгенеренной автоматом по ява-доку?

Leonid KudryavtsevЕсли в доке написано, что должно работать так
А если написано не понятно, и трактовать можно по-разному? Да еще и на иностранном языке, что добавляет пикантности.

Leonid Kudryavtsevи смело обрашаться в поддержку
в городскую баню

Леонид, прекращай развлекать меня пустопорожней болтовней только на основании того, что я предложил посмотреть примеры.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Создаётся много подключений к бд в пуле
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]