2010-03-03 11 views
48

Quali sono i vantaggi del pontile embedding rispetto allo deploying delle tue applicazioni web nel pontile? Se stai pianificando di implementare più di un'app Web, dovresti attenersi rigorosamente alla distribuzione di un file war per ogni app Web (anziché scrivere un server incorporato che chiama ogni app Web)?Jetty: per incorporare o non incorporare?

+5

Mi piacerebbe mantenere il tag incorporato qui, la ricerca di "jetty embedded" è ciò che le persone fanno. –

+0

Il tag incorporato è per software in esecuzione su dispositivi, questa domanda non è adatta a questo. – starblue

+8

@starblue Chi ha detto che "embedded" è "per software in esecuzione su dispositivi" e solo per quello? I tag sono per set, i set possono coprire aree multiple (è 'compiler' solo per esempio javac? Certamente no). Quindi aggiungi altri vincoli per ottenere l'intersezione se vuoi limitare le cose. E perché "embeddeed" viene utilizzato per contenitori incorporabili come Jetty, Jboss, GlassFish nel mondo Java (come Google mostrerà chiaramente, ad esempio http://www.google.com/search?q=jetty+embedded), perché EJB3. 1 ha una "Embedded API", vorrei poter interrogare su jetty + embedded, glassfish + embedded, ejb + embedded, ecc. –

risposta

22

userei molo incorporato quando l'obiettivo è quello di creare un'applicazione stand-alone in cui molo è solo una delle componenti (ad esempio in un contenitore OSGi). se si desidera distribuire qualche war, l'installazione di un jetty di default sembra più preferibile. Non penso che la scelta dipenda dal fatto che pianifichi di distribuire più di una webapp. quando incorpori il molo dovrai fare i conti con il tuo codice.

+0

Tuttavia, quali sono le aree in cui utilizzare un server Web Jetty su un Tomcat WebServer completo? – Franklin

+5

Jetty e tomcat sono paragonabili per dimensioni e capacità. –

17

Incorporare molo è a portata di mano in due casi ho familiarità con:

  1. JNI. È molto più facile assicurarsi di avere le cose giuste nel caricatore di classe giusto.

  2. Sviluppo. È molto più semplice attivare un pontile incorporato in Eclipse piuttosto che danzare con gli strumenti Web di Eclipse e gestire le distribuzioni e il collegamento del debugger.

+2

Non solo più semplice, ma anche molto più veloce !! – Jacob

9

Dai un'occhiata al contenitore servlet Winstone che consente di distribuire un singolo file WAR come un jar eseguibile come caso d'uso supportato. Questo è ciò che fa Hudson.

+0

Winstone è stato successivamente clonato dal progetto Jenkins (nee Hudson) e rielaborato per avvolgere Jetty. http://jenkins-ci.361315.n4.nabble.com/Winstone-is-now-powered-by-Jetty-td4678478.html –

Problemi correlati