Bonjour a tous
J'étudie actuelement la migration d'une plateforme ASP Application Service Provider, orientée vers l'échange de documents.
L'architecture est celle ci: une servlet JAXMServlet à l'écoute des requetes SOAP qu'elle transmet par TCP/IPà un "router" qui l'analyse puis recrée la requete SOAP vers un "module" qui contient la fonction à executer, ...
Chaque "module" est donc indépendant, communique par socket, et regroupe des fonctions qui rendent des services communs. Bref une architecture où on réinvente un peu la roue, mais qui marche pas mal(rajouter des fonction est simlple, de meme que creer de nouveaux modules)
Les problemes:
1- actuelement sous Tomcat4.1, on plante occsionlement avec OutOfMemory... et on est tenté de passer à un AS (genre JBoss ou Jonas)
2 - impossible de monitorer finement le comportement des modules 'à part les log,...)
3- plantage dans l'échange de gros doc (réglé par plusieurs requetes)
Mes objectifs:
1- passer d'une servlet perso vers un JAX-RPC Runtime, genre servlet Axis (à moins que vous n'ayez d'autres suggestions!), pour éviter de construire/parser manuelement les requetes
2- passer de JAXM-SAAJ vers JAX-RPC-SAAJ, pour faire de vrais WebServices
3- coté serveur, suuprimer les transmissions de SOAP
4- choisir un endpoint pour ses WS (EJB ou classes standard)
Mes observations:
1- passer à un modele de composant EJB semble assez tentant, tant les "modules" ressemblent à des SessionBean
2- pratiquement pas d'objets métiers actuelement, de + toutes les requetes à la base de données se font en PL/SQL (pas d'EntityBean, CMP ou JDO en gros)
Mes questions:
J'ai 2 solutions pour les WS endpoint:
1- soit rester dans le contexte d'une appli Web, où j'ai par exemple un WS (et plusieurs méthodes) par module: ensuite ma facade fait appel aux EJB
2- soit ma facade est un EJBSession Stateless qui appel d'autres EJBSession (avec état dans certains cas si c possible???)
=> si la sol1 est possible, je vais sérieusement réfléchir si il est raisonable d'utiliser des EJB
Quand pensez vous? Est ce commun d'utiliser des EJB sans EntityBean?
Merci d'avance.
Partager