Découplage de l'application Java à l'aide de la file d'attente: est-ce une bonne pratique?


J'ai deux applications (programme java classique et un lot) qui doivent faire face les unes aux autres. Afin de les découpler autant que possible la communication, je pense à utiliser une file d'attente entre les applications.

Le fait est que la première application fournit des objets java que la seconde doit transformer en un autre type d'objets (sorte de modèle DTO) et faire un appel de logique métier et de service Web en utilisant les objets nouvellement construits. Utilise une file d'attente est la meilleure solution dans ce cas?

Si c'est le cas, y a - t-il un problème de performance sur la file d'attente (en pensant notamment à la taille et au temps de consommation)? Quelle est la meilleure façon d'implémenter cette file d'attente?

Merci d'avance :)

Author: Naoufel, 2012-05-16

1 answers

La file d'attente est probablement la meilleure solution si le travail est long et gourmand en ressources. Par exemple, si votre application par lots envoie des e-mails massifs avec chaque contenu fourni par l'application classique, alors yes Queue est la bonne solution.

Inconvénients de la file d'attente inclut il introduit la surcharge de gestion comme vous devez vous soucier de ce que si la file d'attente devient trop grande, comment remettre la réponse à l'application classique, etc.

Si le programme batch peut traitez rapidement chaque demande de l'application classique, puis exposez le programme batch en tant que service Web afin que l'application classique puisse obtenir une réponse immédiate.

 2
Author: Alvin, 2012-05-16 09:22:35