質問編集履歴
2
追記(使用データソース変更(2017/11/16))
test
CHANGED
File without changes
|
test
CHANGED
@@ -198,8 +198,80 @@
|
|
198
198
|
|
199
199
|
|
200
200
|
|
201
|
+
###追記(使用データソース変更(2017/11/16))
|
202
|
+
|
203
|
+
データソースを
|
204
|
+
|
205
|
+
org.apache.commons.dbcp.BasicDataSourceに変更したところ、
|
206
|
+
|
207
|
+
性能が多少改善致しましたので追記致します。
|
208
|
+
|
209
|
+
(以前、[dbcp2]を試した時は、性能の改善が見られなかったのですが…)
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
【以下、データソースマッピング設定】
|
214
|
+
|
215
|
+
```
|
216
|
+
|
217
|
+
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
|
218
|
+
|
219
|
+
<property name="driverClassName" value="org.postgresql.Driver"/>
|
220
|
+
|
221
|
+
<property name="url" value="jdbc:postgresql://xxxxxxxxxxxxxx" />
|
222
|
+
|
223
|
+
<property name="username" value="xxxxx"/>
|
224
|
+
|
225
|
+
<property name="password" value="xxxxx"/>
|
226
|
+
|
227
|
+
<property name="initialSize" value="300"/>
|
228
|
+
|
229
|
+
<property name="testOnBorrow" value="true"/>
|
230
|
+
|
231
|
+
<property name="maxActive" value="300"/>
|
232
|
+
|
233
|
+
<property name="maxIdle" value="300" />
|
234
|
+
|
235
|
+
</bean>
|
236
|
+
|
237
|
+
```
|
238
|
+
|
239
|
+
|
240
|
+
|
241
|
+
上記データソースに変更後、
|
242
|
+
|
243
|
+
10秒間に100アクセスは、問題なく動作するようになりました。
|
244
|
+
|
245
|
+
ご協力ありがとうございます。
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
しかし、
|
250
|
+
|
251
|
+
・負荷を上げると、以前と同エラーが発生してしまう。
|
252
|
+
|
253
|
+
(※5秒間に400アクセスの検証で稀にエラーが発生)
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
・10秒間に100アクセスの検証をループして実施すると、
|
258
|
+
|
259
|
+
エラーが発生してしまう。
|
260
|
+
|
261
|
+
(※10秒間に100アクセスを2分間ループさせると、
|
262
|
+
|
263
|
+
1%未満の確立でエラーが発生)
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
・不具合原因の特定ができていない。
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
という状況の為、引き続き調査を行っていきたいと思っております。
|
272
|
+
|
201
273
|
|
202
274
|
|
203
275
|
皆様お忙しいとは思いますが、
|
204
276
|
|
205
|
-
|
277
|
+
引き続きお力添えいただければ幸いです。
|
1
ご質問にたいする回答
test
CHANGED
File without changes
|
test
CHANGED
@@ -159,3 +159,47 @@
|
|
159
159
|
何かアドバイスをいただけるとうれしいです。
|
160
160
|
|
161
161
|
よろしくお願い致します。
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
###追記
|
166
|
+
|
167
|
+
ご質問ありがとうございます。
|
168
|
+
|
169
|
+
返答が遅くなり、申し訳ございません。
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
A)PostgreSQL側で、max_connectionsの設定は?
|
174
|
+
|
175
|
+
⇒"100"になっております。
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
B)PostgreSQL側で、全てのSQLをログ出力できるようにして、validationQuery" value="SELECT 1 " が発行されているかどうか
|
180
|
+
|
181
|
+
⇒確認しましたところ、validationQuery" value="SELECT 1 "の発行はされておりました。
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
C) OS側のtcp timeoutが短すぎることはないか?
|
186
|
+
|
187
|
+
⇒他アプリケーション動作時は、問題なく動作するため、
|
188
|
+
|
189
|
+
tcp timeoutの設定は問題ないと思っております。
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
また、今回の同時アクセス検証につきましては、
|
194
|
+
|
195
|
+
10秒間に100アクセスが可能かの検証を行っており
|
196
|
+
|
197
|
+
現状、100アクセス中の数件のコネクションが切断されてしまう状態です。
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
|
202
|
+
|
203
|
+
皆様お忙しいとは思いますが、
|
204
|
+
|
205
|
+
ご教授をお願いいたします。
|