Ir al contenido principal

Destacado

Introducción a Axon Framework - Parte 1

Investigando sobre arquitecturas CQRS encontre el Axon Framework.  Te comparto mis apuntes en mi camino a aprender este framework.


¿Que es CQRS?
CQRS es una forma de crear sistemas de software que hace hincapié en separar la parte  que cambia el estado de la aplicación y la parte que consulta el estado de la aplicación. 

¿Que es el Framework Axon? Es un framework para implementar CQRS en Java. Se describe asi mismo como un framework que te permite construir aplicaciones escalables, extensibles y mantenibles; permitiendo a los desarrolladores aplicar el patrón arquitectónico Command Query Responsibility Segregation (CQRS). El cual nos da ciertos bloques importantes con sus implementaciones respectivas para crear estos sistemas como: agregados, repositorios y bus de eventos (el mecanismo de envío para eventos).  Estos últimos términos provienen del Domain Driven Design (DDD). 
En palabras simples: CQRS es escribir y leer en forma separada. 
En búsqueda de tener bajo acoplamiento, el tr…

JoeTip #005 - Trabajar con Jetty y HikariCP en Spring Boot


Jetty

Cuando trabajas con spring boot por defecto si agregas la dependencia web esta viene con el contenedor de servlets tomcat. Si tu quieres trabajar con Jetty debes excluir el tomcat y agregar la dependencia de Jetty:




dependencies {
  // Kotlin Dependencies
  compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
  compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
  testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"

  // Spring Dependencies
  compile("org.springframework.boot:spring-boot-starter-web") {
    exclude module: "spring-boot-starter-tomcat"
  }
  compile "org.springframework.boot:spring-boot-starter-jetty"
  compile "org.springframework.boot:spring-boot-starter-actuator"


HikariCP

HikariCP es un pool de conexiones de JDBC de alta performance. Un pool de conexiones es un cache de conexiones de base de datos de manera que las conexiones puedan ser reutilizadas cuando futuros requests a la base de datos sean requeridos. Los pools de conexiones son utilizados para mejorar la performance de comandos ejecutados en la base de datos.




compile "com.zaxxer:HikariCP:2.6.1"



Luego en el application.properties se debe añadir la siguiente configuración:


spring.datasource.type=com.zaxxer.hikari.HikariDataSource



De manera que si ejecutamos la aplicación veremos en la consola que el cambio fue aceptado:


2017-07-26 07:57:26.345  INFO 1015 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Starting...
2017-07-26 07:57:26.505  INFO 1015 --- [           main] com.zaxxer.hikari.HikariDataSource       : HikariPool-1 - Start completed.

Enjoy!

Comentarios