Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Создаётся много подключений к бд в пуле / 17 сообщений из 17, страница 1 из 1
18.04.2018, 20:18
    #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
18.04.2018, 20:58
    #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
18.04.2018, 20:59
    #39632834
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
Дока говорит, что maxActive по умолчанию 100, так что вроде нормально все выглядит.
...
Рейтинг: 0 / 0
18.04.2018, 21:03
    #39632837
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
Tsyklop...
Почему так происходит?
Х.з. Но как минимум нигде не увидел что бы задавалось свойство аналогичное WebLogick'овскому "Maximum Capacity"

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

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

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

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

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

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

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

Ну я нашел на их офф сайте и перевл мне гугл. Вроде как перевел нормально.
...
Рейтинг: 0 / 0
18.04.2018, 21:19
    #39632847
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
TsyklopНу я нашел на их офф сайте и перевл мне гугл. Вроде как перевел нормально.
знаю я как он переводит...
тут надо что на что влияет и прочее
...
Рейтинг: 0 / 0
18.04.2018, 22:16
    #39632867
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
TsyklopСоздаю потоки в которых делается запрос к бд.один коннект на поток не выходит?
...
Рейтинг: 0 / 0
19.04.2018, 10:59
    #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
19.04.2018, 11:05
    #39633027
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
chpashaсверху его ограничивает maxIdle (сколько всего можно и меть в пуле) по умолчанию равный maxActive
хотя если посмотреть на примеры и еще раз вчитаться, maxActive и maxIdle вообще только в сумме!? ограничивают общее кол-во коннектов, например maxActive="20" maxIdle="10"
...
Рейтинг: 0 / 0
19.04.2018, 11:10
    #39633032
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
надо смотреть не на примеры, а на доку
...
Рейтинг: 0 / 0
19.04.2018, 11:18
    #39633041
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
Leonid Kudryavtsevнадо смотреть не на примеры, а на доку
если ты носитель языка и дока написана однозначно, как таблица умножения - то возможно. официальные примеры позволяет избежать ошибок в трактовке и часто говорят больше чем слова
...
Рейтинг: 0 / 0
19.04.2018, 11:32
    #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
19.04.2018, 11:43
    #39633062
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создаётся много подключений к бд в пуле
Leonid Kudryavtsevофициальные примеры часто такой бред.
а доку-то, доку кто пишет, господь бог?

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

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

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

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

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

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

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

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

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

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


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