I server applicazioni (con EJB) sono l'unico modo per la comunicazione client / server Java EE?

StackOverflow https://stackoverflow.com/questions/415841

Domanda

Immagina un'applicazione ERP client / server Java che serve fino a 100 utenti simultanei, sia client web che client swing. Per la persistenza possiamo usare l'API di persistenza e l'ibernazione.  Ma quando si tratta di comunicazione client / server, abbiamo davvero un'alternativa all'utilizzo di un AS con EJB per contenere i costi di programmazione della comunicazione remota?

Sembra una soluzione molto pesante da inserire nei bean e in un application server, solo per remoting. Esiste anche il modo standard di usare RMI, ma chi vuole oggigiorno codificare tutto da solo ...

So che otterrai molte funzionalità gratuitamente con un AS oltre alla parte remota. E forse è la strada da percorrere. Ma esistono davvero altre alternative (a basso costo di programmazione) a un AS per la comunicazione client / server per un'applicazione enterprise?

È stato utile?

Soluzione

Personalmente considero Seam come la soluzione definitiva al problema che non ho, ma a parte questo, ci sono molte opzioni e Spring è usato per la maggior parte di esse:

Il vantaggio dei metodi remoti basati su HTTP è che si collegano facilmente ai modelli di sicurezza di Spring. Inoltre avrai accesso a cose come gli intercettori.

Altri suggerimenti

È possibile utilizzare quadri remoti leggeri. La primavera ha diverse opzioni in questa sezione.

Se mi chiedi una parola per entrambi, ne suggerirò due. Cucitura o primavera. Mi piace Seam, ma per remoting leggeri Spring ha soluzioni e supporto più praticabili. Anche in questo caso, se il tuo AS è JBoss, rifletti su Seam .

Un application server è una soluzione piuttosto pesante. A seconda delle tue esigenze, proverei ad assicurarmi che tu possa eseguire su un semplice contenitore servlet (come Tomcat). Trovo il remoting molto più semplice con Spring-remoting invece di EJB completo. Il remoting a molla fornisce un'astrazione sull'effettiva tecnica di remoting utilizzata. Hessian ha una buona reputazione come protocollo di peso leggero.

Avere una sorta di framework di server (AS o container servlet) è una buona cosa poiché non dovrai pensare tanto a tutti i problemi di basso livello (creazione di connessioni, threading, ...).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top