EJB Vs WebService? Point de vue performance
Eh bien, Nous avons de la situation afin de décider maintenant. Je pensais que stackoverflow est le meilleur endroit pour discuter.
De fond:
Nous avons 2 machines virtuelles java Enterprise Application serveur et une application déployée sur chacun d'eux. nous devons permettre à l'entreprise de la fonctionnalité de l'invocation d'une machine à l'autre. Nous supposons que l'un est client et un autre serveur.
Maintenant à partir de la performance du point de vue de l'approche qui est mieux à la conception de l'application serveur.
en gardant les choses suivantes à l'esprit:
J'ai 2 options:
- Pur EJB une application EJB client et serveur EJB composant
- WebService Plaine Java approche (pas de webservice sur EJB, coz il est tout simplement mess)
Mes mesures de Performance: Vitesse : quelle approche de la conception d'une demande de plus en plus vite. Mon entreprise application va être déployée sur un ordinateur 32 bits, c'est sûr!
Notez également qu'il existe 2 machines virtuelles, on est en 32 bits et 64 Bits (éviter cette situation est inévitable pour le moment)
Veuillez fournir vos commentaires
Ce qui concerne
Chetan
source d'informationauteur Chetan
Vous devez vous connecter pour publier un commentaire.
Si par "Web Services" vous voulez dire, SAVON services web, Ejb devrait être plus rapide, peu importe comment vous le faites.
Pour:
Contre:
Mais si vous n'avez pas besoin de la transaction distribuée de la manipulation, il suffit d'utiliser RMI. Il a les pros, mais aucun des inconvénients des Ejb. Il a été autour depuis des siècles, mais il fonctionne encore juste dandy.
Il n'a pas à être l'un ou l'autre. Vous pouvez avoir toutes vos affaires de la logique dans les Ejb, et également de fournir un service web façade pour accéder à l'EJB. Rappelez-vous aussi qu'il existe différents types d'architectures de service. Le SAVON est ce que la plupart des gens pensent quand ils entendent "service web", mais vous pouvez également regarder JAX-RS.
L'envoi de données XML via HTTP est horriblement inefficace. Sur l'autre main, il vous donne beaucoup plus de flexibilité sur le côté client. Les services Web peuvent être consommés à partir de n'importe quelle plateforme ou un langage de programmation.