2011-02-25 5 views

Respuesta

3

Hay un problema conocido al respecto, consulte: http://www.ibm.com/support/docview.wss?rs=180&uid=swg21396021

Ajuste del valor de metadatos completa a cierto en su web.xml impedirá la exploración de anotaciones y acelerar las cosas.

También puede usar el filtro de análisis de anotaciones en el archivo de manifiesto del módulo para evitar selectivamente el análisis de anotaciones de los archivos jar.

1

esto no es específico con RAD, pero después de años de trabajo con WebSphere he encontrado que si usted no está modificando el descriptor de despliegue o el descriptor de servicio web, sólo tiene que actualizar el EAR explotado/Archivo WAR en la carpeta installedApps de su servidor de aplicaciones WAS. Para actualizar, simplemente puede "descomprimir" su nuevo archivo JAR en la carpeta.

A continuación, reinicie el servidor de aplicaciones. SIGNIFICATIVAMENTE más rápido, especialmente si su inicio de WAS es rápido.

+0

Solo una nota esto. He estado haciendo esto por un tiempo. Por lo general, no reinicio y la mayoría de las veces funciona bien. Pero a veces se pone raro como el problema que publiqué [aquí] (http://stackoverflow.com/questions/25769258/javascript-file-is-not-loading-fully-in-all-browsers). Reiniciar WAS toma un poco de tiempo en realidad. Yo diría, unos 3-5 minutos –

0

Una de las cosas molestas que ralentiza RAD es la publicación automática que el does.So servidor si puede cambiar la opción en el editor de configuración Sever (que se puede acceder haciendo doble clic en los servidores de vista del servidor) que podría evitar la publicación a veces no quieres. Asegúrate de publicarlo cuando necesites hacer un cambio.

También creo que si cambias la opción de "publicar sin copiar los recursos" que también podría acelerar tu arranque del servidor.

1

Lamentablemente no he tenido la oportunidad de probarlo ya que acabamos de pasar de RAD a Eclipse, pero le recomiendo que invierta unos minutos en comprobar si JRebel funciona con RAD.

Si funciona, reduciría la cantidad de compilaciones/despliegues a casi 1 por día (o reinicio de la computadora) tan lejos como lo estoy experimentando con Eclipse + WAS8.5 después de pasar de RAD + WAS7.5.

@Edit: Claro que RAD no necesita ser compatible con JRebel, ya que está diseñado para ejecutar IDE de manera independiente como lo hace con otras herramientas útiles. Más importante es el punto que se ejecuta con Websphere y supongo que el proceso de implementación de WAS toma la mayor parte del tiempo que desea ahorrar.

1

Hay algunos pasos simples que usted puede mejorar significativamente la velocidad de despliegue de la aplicación en WebSphere:

  1. Definir Ignorar-escaneo de archivos con todos los tarros de terceros, que no desea para la exploración WebShere para anotaciones. Puede hacer esto en el archivo de manifiesto o simplemente en pom.xml.Tenga cuidado con esto, no hay expresiones regulares y si escribe varias jarras en una línea en el manifiesto, no funcionará debido a las limitaciones de manifest.mf de la longitud de la línea. Si lo escribe en manifest.mf, necesita ir a una nueva línea con espacio al comienzo de la línea (ver ejemplo a continuación).

    Pero puede escribirlo en una línea en la configuración de maven war plugin (vea el ejemplo completo a continuación) y Maven lo dividirá automáticamente en varias líneas.

  2. segundo enfoque consiste en definir de manifiesto/Maven/Websphere Enable-Implícito-frijol-Archivo en false Desactivará CDI en paquetes, que no contiene beans.xml

  3. tercer enfoque es aumentar tamaño del almacenamiento dinámico de Java en las propiedades de JVM de Websphere. Necesita ir: Consola IBM Websphere -> Servidores -> {su servidor} -> Infraestructura del servidor -> Java y gestión de procesos -> Definición del proceso -> Propiedades adicionales -> Máquina virtual Java -> Establecer tamaño de almacenamiento dinámico inicial (MB) - 300 (o más) tamaño máximo del montón (MB) - 600 (o más)

ejemplo de código para maven-guerra-plugin en pom.xml:

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>3.1.0</version> 
     <configuration> 
      <failOnMissingWebXml>false</failOnMissingWebXml> 
      <packagingExcludes>pom.xml</packagingExcludes> 
      <archive> 
       <manifestEntries> 
        <Enable-Implicit-Bean-Archive>false</Enable-Implicit-Bean-Archive> 
        <Ignore-Scanning-Archives> 
         hibernate-core-5.2.10.Final.jar,httpclient-4.4.1.jar,poi-ooxml-3.17.jar,poi-3.17.jar,poi-ooxml-schemas-3.17.jar,antlr-2.7.7.jar, apns-1.0.0.Beta6.jar,ews-java-api-2.0.jar,itextpdf-5.5.11.jar,byte-buddy-1.6.6.jar,xmlbeans-2.6.0.jar,guava-23.5-jre.jar,commons-collections4-4.1.jar 
        </Ignore-Scanning-Archives> 
       </manifestEntries> 
      </archive> 
     </configuration> 
    </plugin> 

ejemplo de manifiesto. mf

Manifest-Version: 1.0 
Built-By: your-name 
Enable-Implicit-Bean-Archive: false 
Created-By: IntelliJ IDEA 
Build-Jdk: 1.8.0_144 
Ignore-Scanning-Archives: hibernate-core-5.2.10.Final.jar,httpclient-4 
.4.1.jar,poi-ooxml-3.17.jar,poi-3.17.jar,poi-ooxml-schemas-3.17.jar,a 
ntlr-2.7.7.jar, apns-1.0.0.Beta6.jar,ews-java-api-2.0.jar,itextpdf-5. 
5.11.jar,byte-buddy-1.6.6.jar,xmlbeans-2.6.0.jar,guava-23.5-jre.jar,c 
ommons-collections4-4.1.jar 
Cuestiones relacionadas