Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:migracionsicoferp:process:backend:guiadependenciasmaven

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
ada:howto:sicoferp:factory:migracionsicoferp:process:backend:guiadependenciasmaven [2020/05/05 15:09]
carlos.torres
ada:howto:sicoferp:factory:migracionsicoferp:process:backend:guiadependenciasmaven [2020/05/05 20:40] (actual)
carlos.torres
Línea 24: Línea 24:
 Son aquellas dependencias que deben estár presentes en todos los microservicios ya que su uso aplica la arquitectura desea en la fabrica de desarrollo. A continuación se define esas dependencias:​ Son aquellas dependencias que deben estár presentes en todos los microservicios ya que su uso aplica la arquitectura desea en la fabrica de desarrollo. A continuación se define esas dependencias:​
  
 +==== Spring Boot DevTools ====
 +Spring Boot DevTools((https://​www.arquitecturajava.com/​spring-boot-devtools-y-recarga-de-aplicaciones/​)) es la herramienta de Spring Boot que nos permite reiniciar de forma automática nuestras aplicaciones cada vez que se produce un cambio en nuestro código. Utíl para la fase de desarrollo y pruebas.
  
 +==== Spring Boot Actuator ====
 +Spring Boot Actuator((https://​openwebinars.net/​blog/​como-anadir-spring-boot-actuator-tu-proyecto/​)) es una librería que nos proporciona herramientas de monitorización y administración de nuestra API REST de una manera bastante sencilla. ​
  
-==== Servicio de configuración central - ConfigServerADA ​==== +==== Spring Cloud Config Client ​==== 
-Se encarga ​de centralizar ​proveer remotamente la configuración a cada microservicio. Esta configuración se mantiene convencionalmente ​en un repositorio,​ lo cual permite gestionar su propio ciclo de vida versionamiento.+Spring Cloud Config((https://​www.baeldung.com/​spring-cloud-configuration)) es el enfoque cliente / servidor ​de Spring para almacenar ​servir configuraciones distribuidas ​en múltiples aplicaciones ​entornos.
  
-=== Ubicación === +Este almacén de configuración se versiona idealmente bajo el control de versión de Git y se puede modificar ​en el tiempo de ejecución de la aplicación
-El código fuente está uicado ​en la siguiente url: [[http://​adacsc.co:​1443/​svn/​repository/​ADA/​SICOFERP/​fuentes/​branches/​development/​core/​ConfigServerADA|Ir al repositorio]]+
  
-=== Modo de uso === +==== Spring Cloud Netflix Eureka Discovery Client ==== 
-Debe estar definido como una propiedad del archivo de configuración bootstrap.yml ó bootstrap.properties como se indica ​continuación:​+Eureka((https://​blog.bi-geek.com/​arquitecturas-spring-cloud-netflix-eureka/​)) es un servicio REST, utilizándose principalmente en la nube de AWS, a la cuál está estrechamente ligado. Eureka ​se comporta como servidor, cuyo objetivo es registrar y localizar microservicios existentes, informar de su localización,​ su estado y datos relevantes de cada uno de ellos. Además, nos facilita el balanceo de carga y tolerancia ​fallos.
  
-<​code>​ +La dependencia cliente permite que los microservicios se registren automaticamente al arrancar su instancia.
-spring: +
-   ​cloud:​ +
-      config: +
-         ​discovery:​ +
-            enabled: true +
-            service-id: co.ada.core.server.config +
-</​code>​+
  
-==== Servicio de registro / descubrimiento - EurekaServerADA ​==== +==== Spring Web ==== 
-Se encarga de proveer ​los endpoints ​de los servicios ​para su consumoTodo microservicio se registrará automáticamente en él en tiempo de bootstrap.+Contiene ​los recursos necesarios (conjunto ​de dependencias) ​para el desarrollo web((https://​www.adictosaltrabajo.com/​2016/​12/​22/​aplicaciones-web-con-spring-boot-capa-a-capa/​)).
  
-=== Ubicación ​=== +===== Dependencias de traza ===== 
-El código fuente está uicado en la siguiente url: [[http://​adacsc.co:​1443/​svn/​repository/​ADA/​SICOFERP/​fuentes/​branches/​development/​core/​EurekaServerADA|Ir ​al repositorio]]+Son aquellas dependencias que permiten obtener infomración asociada ​al microservicio como:
  
-=== Modo de uso === +  * Estado 
-Debe estar definido como una propiedad del archivo ​de configuración bootstrap.yml ó bootstrap.properties como se indica a continuación:​+  * Memoria 
 +  * Trazas ​de rendimiento 
 +  * Log de errores
  
-<​code>​ +Se define las siguientes dependencias de traza:
-eureka: +
-   ​client:​ +
-      serviceUrl:​ +
-         ​defaultZone:​ http://​localhost:​8761/​eureka/​ +
-</​code>​+
  
-==== Servidor perimetral / exposición de servicios (Edge server) - ZuulServerADA ​==== +==== Zipkin Client ​==== 
-Servidor gateway en el que se expondrán los servicios a consumirTodos los microservicios deben ser expuesto por este servidor por lo tanto deben registrar los path de rutas deben ser únicos en todo el contexto de exposición ​de servicios ​de cada ambiente.+Zipkin((https://​www.baeldung.com/​tracing-services-with-zipkin)) es un proyecto ​de código abierto que proporciona mecanismos para enviar, recibir, almacenar ​visualizar trazas. Esto nos permite correlacionar la actividad entre servidores y obtener una imagen mucho más clara de lo que está sucediendo exactamente en nuestros ​servicios.
  
-=== Ubicación === +La dependencia cliente permite integrar el registro ​en el servidor Zipkin.
-El código fuente está uicado ​en la siguiente url: [[http://​adacsc.co:​1443/​svn/​repository/​ADA/​SICOFERP/​fuentes/​branches/​development/​core/​ZuulServerADA|Ir al repositorio]]+
  
-=== Modo de uso === +==== Spring for RabbitMQ ==== 
-Cada Microservicio debe estar registrado en las rutas de reconocimiento del servidor ​como una sección similar a la  indicada a continuación:​+RabbitMQ es un servidor ​AMQP. Es decir acepta y reenvia mensajes.
  
-<​code>​ +===== Dependencias de clientes ===== 
-zuul: +Son aquellas dependencias que proveen clientes para el consumo de servicios como Feign o RestController
-  routes: +
-    usuario: +
-      service-id: co.ada.core.service.userold +
-      path: /​api/​usuario/​** +
-</​code>​+
  
-La inclusión de la ruta debe ser solicitada ​al administrador de rutas de configuración.+==== OpenFeign ==== 
 +Feign((https://​github.com/​OpenFeign/​feign)) es un cliente java http ligero. Que se al stack Spring Boot para simplificar el consumo ​de los servicios.
  
-==== Servidor ​de Trazabilidad - ZipkinServerADA ​==== +===== Dependencias ​de datos ===== 
-Centraliza el proceso ​de trazas ​log en los microservicios ​de forma centralizada.+Son aquellas relacionadas a la persistencia ​de la información o a la gestión ​exposición ​de los datosEntre ellas están definidas:
  
-=== Ubicación === +  * Spring Data JPA 
-El código fuente está uicado en la siguiente url: [[http://​adacsc.co:​1443/​svn/​repository/​ADA/​SICOFERP/​fuentes/​branches/​development/​core/​ZipkinServerADA|Ir al repositorio]]+  * RestRepository 
 +  * PostgresSQL Driver 
 +  * MySQL Driver 
 +  * Oracle Driver
  
-=== Modo de uso === +El uso de estas dependencias dependerá del origen de datos.
-Cada Microservicio debe incluir la siguiente dependencia:​+
  
-<​code>​ 
-<​dependency>​ 
-  <​groupId>​org.springframework.cloud</​groupId>​ 
-  <​artifactId>​spring-cloud-starter-zipkin</​artifactId>​ 
-</​dependency>​ 
-</​code>​ 
  
-Por defecto el servidor Zipkin se publica en el puerto 9411 
  
 [[ada:​howto:​sicoferp:​factory:​migracionsicoferp:​process:​backend|←Volver atrás]] [[ada:​howto:​sicoferp:​factory:​migracionsicoferp:​process:​backend|←Volver atrás]]
ada/howto/sicoferp/factory/migracionsicoferp/process/backend/guiadependenciasmaven.1588691350.txt.gz · Última modificación: 2020/05/05 15:09 por carlos.torres