Bonjour !
Je fais tourner un programme java avec environ 1000 threads qui font pas mal d'insertions chacun dans la BDD. (J'ai un gros serveur derrière : 16Go de RAM, SSD)
Ça a pas forcément l'air de galérer mais au bout de 4mn environ j'obtiens l'erreur suivante :
- BEGIN NESTED EXCEPTION **
java.net.ConnectException
MESSAGE: Connection timed out
STACKTRACE:
java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(Abstrac
tPlainSocketImpl.java:327)
at java.net.AbstractPlainSocketImpl.connectToAddress(
AbstractPlainSocketImpl.java:193)
at java.net.AbstractPlainSocketImpl.connect(AbstractP
lainSocketImpl.java:180)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.j
ava:384)
at java.net.Socket.connect(Socket.java:546)
at java.net.Socket.connect(Socket.java:495)
at java.net.Socket.<init>(Socket.java:392)
at java.net.Socket.<init>(Socket.java:235)
at com.mysql.jdbc.StandardSocketFactory.connect(Stand
ardSocketFactory.java:256)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:271)
at com.mysql.jdbc.Connection.createNewIO(Connection.j
ava:2771)
at com.mysql.jdbc.Connection.<init>(Connection.java:1
555)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonReg
isteringDriver.java:285)
at java.sql.DriverManager.getConnection(DriverManager
.java:620)
at java.sql.DriverManager.getConnection(DriverManager
.java:200)
at org.apache.commons.dbcp.DriverManagerConnectionFac
tory.createConnection(DriverManagerConnectionFacto
ry.java:75)
at bdd.Bdd.Connection(Bdd.java:78)
at webBot.WebBot.InitBot(WebBot.java:103)
at webBot.WebBot.call(WebBot.java:191)
at webBot.WebBot.call(WebBot.java:1)
at java.util.concurrent.FutureTask$Sync.innerRun(Futu
reTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.jav
a:166)
at java.util.concurrent.Executors$RunnableAdapter.cal
l(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(Futu
reTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.jav
a:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(
ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
J'ai déjà essayé de mettre un wait_timeout = 86400 dans /etc/mysql/my.cnf mais cela n'a rien changé ! :/
D'où est ce que cela peut venir d'après vous ?
Merci d'avance et bonne soirée !