Actualmente estoy probando algunas tecnologías de aplicaciones web en un proyecto Java y me preguntaba por qué las páginas a veces cargan rápido y algunas veces tardan casi 5 segundos en cargarse.LocalDateTime de Jodatime es lento cuando se usa por primera vez
finalmente descubrí que es esta línea
LocalDateTime now = new LocalDateTime();
Cuando se llama la primera vez, se necesita siempre para obtener la hora actual. Cuando se invoca después de eso, incluso en un lugar completamente diferente, es bastante rápido.
actualmente estoy usando
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>1.6.2</version>
</dependency>
Alguien ha tenido alguna experiencia similar? Realmente atascado aquí ... Podría usar LocalDateTime un tiempo antes en mi aplicación para agilizar las llamadas subsiguientes, pero esto parece bastante aburrido.
EDITAR
hago mal uso de la primavera para eso:
@Service
public class JodaTimeLoader {
public JodaTimeLoader() {
LocalDateTime loadMe = new LocalDateTime();
}
}
Ok, gracias por su respuesta detallada. Pero creo que ya no usaré jodatime, realmente no puedo ver ninguna ventaja en este momento. ¿Cargan sus recursos con entusiasmo en sus entornos productivos? – chzbrgla
haciendo eso, precargando recursos, en el inicializador estático es una muy mala idea. lo que quiere hacer es delegar la carga en otro hilo y orar para que nadie intente usarlo. De cualquier forma, tomar 0,1 segundos para cargar es un diseño muy malo. – bestsss
@bestsss: ¿En serio piensas que simplemente ponerlo en otro hilo es mejor? Ejemplificación explícita durante la configuración de la aplicación, puedo ver que es una cosa razonable de hacer. Sin embargo, agregar hilos adicionales para derribar quizás 100 ms de un costo por única vez es solo pedir problemas, especialmente en un punto en el que ya tienes bastante contención de recursos pico. –