2016-05-10 25 views
1

Wir haben eine Anforderung, wo wir vier Web-Service-Anrufe von unserem EJB machen müssen. Alle diese Anrufe sind unabhängig voneinander und sollten gleichzeitig durchgeführt werden.Was ist der beste Weg zu simultanen httpurlconnection Anrufe in einer Java EE-Anwendung

Heute verwenden wir ExecutorService, um diese Anrufe zu tätigen. Es gibt eine Zeitüberschreitung, nach der wir die ExecutorService herunterfahren und die Antworten überprüfen.

Ich möchte wissen, ob es eine bessere Möglichkeit gibt, das Gleiche zu tun?

P.S. Wir verwenden websphere 8.5.0, welches ein Java EE 6 Server ist. Ich habe gefunden, dass ManagedExecutorService in Java EE 7 ist. Gibt es etwas in Java EE 6?

+1

Ein hilfreiches Muster dies in EE6 dafür ist http://stackoverflow.com/questions/13932083/jboss-java-ee-container-and-an-executorservice – Shailendra

Antwort

2

Haben Sie in Betracht gezogen, eine asynchrone Methode für ein Stateless Session Bean (mit der @ Asynchronous Annotation) zu verwenden? Diese Methode würde bewirken, dass der Aufruf an den Webdienst und den Anwendungsserver (über den EJB-Pool) für die Verwaltung der Nebenläufigkeit zuständig wäre.

See: https://docs.oracle.com/javaee/6/tutorial/doc/gkkqg.html