2009-02-18 13 views
7

Tengo una aplicación web que se ejecuta en embarcadero. Las construcciones continuas se construyen en Hudson. Me gustaría hacer un despliegue caliente a petición de Hudson.¿Cuál es la mejor solución para implementar en caliente en Jetty?

Encontré un complemento de carga que debería ser capaz de hacerlo, pero la web de carga no muestra ningún ejemplo completo de cómo hacerlo, para el servidor de embarcadero remoto, ¿puedo extrañarlo?

¿Qué es lo que sugiere? ¿Tienes alguna otra mejor solución?

gracias,

Vitek

+0

¿Qué versión de Jetty estás usando? Cargo tiene soporte remoto para Jetty 6.x + solamente (y solo para el plugin Maven 2). –

+0

parece duplicado de http://stackoverflow.com/questions/2369851/hot-deploy-in-embedded-jetty – ArunaFromLK

Respuesta

3

de documentation por carretera muestra que es posible desplegar a través de embarcadero experto 2.

Y aquí es la configuration.

Supongo que has intentado esto? ¿Cuál fue el problema?

0

Embarcadero: se puede ejecutar como independiente: simplemente copie de forma remota la guerra que construye. Las instancias Standalone Jetty se pueden ejecutar puertos independientes.

yml: por ejemplo

<Set name="ThreadPool"> 
    --> 
    <New class="org.mortbay.thread.QueuedThreadPool"> 
    <Set name="minThreads">10</Set> 
    <Set name="maxThreads">50</Set> 
    <Set name="lowThreads">5</Set> 
    <Set name="SpawnOrShrinkAt">2</Set> 
    </New> 

</Set> 




<Call name="addConnector"> 
    <Arg> 
     <New class="org.mortbay.jetty.nio.SelectChannelConnector"> 
     <Set name="host"><SystemProperty name="jetty.host" default="0.0.0.0" /></Set> 
     <Set name="port"><SystemProperty name="jetty.port" default="8880"/></Set> 
     <Set name="maxIdleTime">300000</Set> 
     <Set name="Acceptors">2</Set> 
     <Set name="statsOn">false</Set> 
     <Set name="confidentialPort">8441</Set> 
     <Set name="lowResourcesConnections">20000</Set> 
     <Set name="lowResourcesMaxIdleTime">5000</Set> 
     </New> 
    </Arg> 
</Call> 

<Set name="handler"> 
    <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection"> 
    <Set name="handlers"> 
    <Array type="org.mortbay.jetty.Handler"> 
     <Item> 
     <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/> 
     </Item> 
     <Item> 
     <New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/> 
     </Item> 
     <Item> 
     <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/> 
     </Item> 
    </Array> 
    </Set> 
    </New> 
</Set> 

<Call name="addLifeCycle"> 
    <Arg> 
    <New class="org.mortbay.jetty.deployer.ContextDeployer"> 
     <Set name="contexts"><Ref id="Contexts"/></Set> 
     <Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts/</Set> 
     <Set name="scanInterval">1</Set> 
    </New> 
    </Arg> 
</Call> 

<Set name="UserRealms"> 
    <Array type="org.mortbay.jetty.security.UserRealm"> 
    <Item> 
     <New class="org.mortbay.jetty.security.HashUserRealm"> 
     <Set name="name">Test Realm</Set> 
     <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set> 
     <Set name="refreshInterval">0</Set> 
     </New> 
    </Item> 
    </Array> 
</Set> 

<Ref id="RequestLog"> 
    <Set name="requestLog"> 
    <New id="RequestLogImpl" class="org.mortbay.jetty.NCSARequestLog"> 
     <Set name="filename"><SystemProperty name="jetty.logs" default="./logs"/>/yyyy_mm_dd.request.log</Set> 
     <Set name="filenameDateFormat">yyyy_MM_dd</Set> 
     <Set name="retainDays">90</Set> 
     <Set name="append">true</Set> 
     <Set name="extended">true</Set> 
     <Set name="logCookies">false</Set> 
     <Set name="LogTimeZone">GMT</Set> 
    </New> 
    </Set> 
</Ref> 

<Set name="stopAtShutdown">true</Set> 
<Set name="sendServerVersion">true</Set> 
<Set name="sendDateHeader">true</Set> 
<Set name="gracefulShutdown">1000</Set> 

Cuestiones relacionadas