Domanda

Quindi ho un client che deve eseguire Tomcat per varie cose (Solr e anche un servizio web) e dopo aver avuto un incontro con lui e un altro programmatore del progetto, mi sono un po 'confuso. L'altro programmatore stava lanciando parole d'ordine e dicendo cose come " Dobbiamo avere un middleware per Tomcat. & Quot; In risposta a ciò, il mio cliente mi chiede di cercare un middleware per Tomcat che mi ha confuso perché pensavo che scrivere un servizio web fosse specifico per il progetto in questione e quindi il "middleware" sarebbe sviluppato da noi. In questo caso, perché non dire semplicemente " servizio Web " ;?

La mia domanda è questa: esiste un servlet o plug-in open source per tomcat che lo rende middleware (forse qualcosa dal sito di apache?) o ha senso che dovrei scrivere il mio middleware per tomcat? Oppure ... Tomcat è considerato middleware? Sono un totale n00b quando si tratta di Java e Tomcat, ma ho molta esperienza con C #, quindi sto cercando di capire come questo si collega a C #. Non ho mai usato il termine "middleware" prima e sono abbastanza sicuro che "webservice" è praticamente la stessa cosa.

Qualche idea?

È stato utile?

Soluzione

Tutte queste risposte sono troppo dettagliate. Sì, Tomcat è un middleware. si trova tra il livello HTML / Javascript sul browser del client e il livello del database sul server. Non è completo come un server J2EE ma è comunque "middleware" per quanto riguarda il termine di parola d'ordine generalmente accettato.

Altri suggerimenti

Il termine middleware viene generalmente utilizzato per descrivere il software che ha lo scopo di connettere due sistemi diversi.

Se stai scrivendo servizi web sopra un'altra applicazione e la terza applicazione parlerà con i servizi web. Quindi sì, stai scrivendo middleware.

Se lavori generalmente in un ambiente .NET e alcuni sistemi sono su Tomcat. Quindi è probabile che l'altro programmatore affermasse che per connettere le app .NET alle app Java su Tomcat, alcuni middleware avrebbero dovuto essere scritti. (Probabilmente ha ragione.)

Il middleware è letteralmente solo un software che si trova nel mezzo di 2 sistemi. Fa cose come se un sistema parla XML su HTTP, l'altro sistema parla COBOL. Il middleware può eseguire la traduzione tra i due sistemi.

Molto del "middleware" là fuori nello spazio J2EE sono solo software creato sopra un contenitore J2EE. Sfortunatamente, Tomcat non è un contenitore J2EE completo, implementa solo le specifiche Servlet. Pertanto, non esiste supporto per altre strutture J2EE come JMS, EJB, SMTP, ecc. Che limitano la sua capacità di connettersi ad altri sistemi.

Tuttavia, se si lavora con sistemi moderni, un sacco di software può essere eseguito su Tomcat, il che consente di connettersi ad altri sistemi utilizzando un servizio Web basato su SOAP. In questo caso, non è davvero necessario un sistema middleware separato.

Tutto sommato, identifica a quali sistemi devi connetterti ora, a quali sistemi devi connetterti al prossimo futuro e Keep It Stupid and Simple (KISS). Non fidarti ciecamente dei venditori che affermeranno che il loro middleware produrrà caffè e lo consegnerà quotidianamente al CEO se questo è ciò che devono dire per effettuare la vendita.

Per quanto riguarda " servizio web " ;, servizio web significa davvero qualsiasi servizio che puoi chiamare dal web. Quindi dipende ancora una volta dal tuo pubblico, se stai comunicando con fornitori esterni che hanno familiarità con il servizio web basato su SOAP, hai molte scelte. Tuttavia, se il tuo pubblico desidera chiamare il tuo servizio twittando con il tuo account tweeter, è anche un servizio web.

Puoi legittimamente dare uno schiaffo al " Middleware " etichetta su tutto ciò che ha client e back-end separati. Il problema per me non è come lo chiami tu, ma indipendentemente dal fatto che sia o meno è la giusta architettura / tecnologia per la situazione.

Penso che la risposta ovvia sarebbe, " Middleware per Tomcat fare cosa? "

Se la risposta della persona è " Per stare tra il database e il browser " ;, allora la risposta giusta è " Tomcat è middleware " ;.

Se la risposta è "Per stare tra il nostro server di sicurezza e Tomcat", allora la risposta è probabilmente "Okay, dovremo verificare se disponiamo già di tale software o se dobbiamo acquisire o crealo. "

Nella vita reale quando arriva questo genere di cose, la risposta che ottengo spesso è più simile, "Perché ho letto in una rivista che il middleware Web è l'ultima tecnologia all'avanguardia e quindi dovremmo usarla" o "Umm, perché, come, ho sentito da qualche parte che hai sempre bisogno di middleware o articoli in metallo o qualcosa del genere", allora la risposta corretta è "Quando avrai identificato il problema, possiamo discutere delle soluzioni. Non decidiamo una soluzione e quindi cerchiamo un problema che potrebbe risolvere. & Quot;

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