2009-04-22 4 views
0

J'ai une application Web qui nécessite uniquement l'exécution du conteneur servlet. Ma page de connexion et ma page d'accueil n'ont pas de transactions back-end, mais tous les autres le font. Quel serait le le plus simple moyen de garantir que je n'envoie pas tous mes discussions dans une socket attendre un système dorsal (CXF-webservices)? C'est weblogic 10.3 mais je ne suis vraiment pas préoccupé par la conformité aux normes. J'ai un aspect AOP qui intercepte déjà tout le trafic backend, donc j'ai pensé que je pourrais incrémenter/décrémenter un AtomicInteger et lancer une exception quand il reste trop peu de threads, mais cela donne le problème de déterminer la taille du pool de threads actuel.Le moyen le plus simple d'empêcher tous les threads Java de disparaître dans IO?

Des idées?

Répondre

1

Combien contrôlez-vous? Pourriez-vous configurer weblogic à use the 8.1 thread pool model, puis définir différents pools de threads - un pour les appels principaux potentiellement de longue durée et un pour le traitement des demandes à la première page?

Ce serait la configuration seulement et vous ne devriez pas coder n'importe quoi, qui me semble bon.

0

Bon, quel est votre cas d'utilisation? Si tout sauf vos identifiants et vos pages d'accueil ont des transactions backend, et que vous n'avez plus de threads, que voulez-vous que l'application fasse? Quel comportement observable aimeriez-vous?

Le genre de chose habituelle serait d'avoir une sorte de message «veuillez patienter ...»; Si c'est le cas, créez un thread qui peut le configurer et faites-le vérifier la progression. Quand il n'y a pas de progrès, montrez le message "veuillez patienter ...".

+0

Je voudrais simplement avoir quelques threads disponibles pour traiter les demandes de la page d'accueil. Il peut y avoir des messages sur la première page comme "le système a des problèmes .." – krosenvold

Questions connexes