Domanda

Ho un quadro di riproduzione 2.2.2 Applicazione che sto distribuendo come file .war e in esecuzione sotto Tomcat 7. La mia applicazione viene eseguita per giorni senza problemi sulla mia macchina Dev locale (attraverso il server di riproduzione incorporato, non Tomcat), maUna volta che la dispongo sotto Tomcat, dopo diverse ore il server Tomcat si bloccherà, abbassando tutte le altre applicazioni in esecuzione anche su di esso.

Penso che il problema sia che il pool di collegamento BoneCP in gioco e il pool di connessione integrato di Tomcat è in conflitto.Non ci sono molte o nessuna informazione utile nei registri Tomcat, quindi sono una specie di indovinamento a sinistra qui.

Mi piacerebbe disabilitare la connessione BoneCP Collegamento all'interno della mia applicazione Play, ma non riesce a trovare alcuna informazione su come farlo.

Qualsiasi consiglio apprezzato!

È stato utile?

Soluzione

Ci sono diverse soluzioni possibili per questo, che potrebbero essere più o meno preferibili per il tuo ambiente di distribuzione.

    .
  1. PLAY ti offre una connessione del database "out-of-the-box", che non è necessario utilizzare. Drop the Play JDBC Component dal file di build (rimuovi jdbc dal libraryDependencies) e configura manualmente le connessioni JDBC da solo. Ad esempio, è possibile creare un TomcatConnectionPool Singleton che ha una funzione getConnection() che ti offre la connessione JDBC necessaria per l'utilizzo nelle azioni di riproduzione.

  2. Scrivi il tuo plugin Estensione specificamente Interfaccia DBPlugin di riproduzione in modo che sia un plug-in database . Implementarlo Come il BoneCppGlugin del gioco ma fai uso del pool di connessione Tomcat anziché BoneCP.

  3. Utilizzare il plugin del database di riproduzione personalizzato di qualcun altro di qualcun altro, come questo che utilizza C3P0 < / a>. Ho delle prove aneddotiche che C3P0 funzioni bene con Tomcat, ma il tuo chilometraggio my varia.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top