Pila

Devprime® Stack proporciona componentes con comportamientos inteligentes, sentando una base sólida para el software y acelerando la modernización de las aplicaciones.

La tecnología se basa en el estándar en SOLID, Clean Code, Hexagonal Architecture y Event-Driven Architecture, proporcionando desacoplamiento, capacidad de prueba y reducción de los costes de mantenimiento, además de una serie de características disponibles a través de los Adaptadores.

Las capas de dominio y aplicación se centran en las reglas de negocio y la exposición por parte del servicio de aplicaciones, lo que proporciona un comportamiento predecible mediante el enfoque de diseño controlado por dominio (DDD) y lo transforma en código fuente con clases nativas de Devprime Foundation. El proyecto Domain compila y funciona independientemente de otros proyectos para garantizar la capacidad de mantenimiento y la capacidad de prueba.

La canalización de Devprime® es responsable de integrar el código del desarrollador con la plataforma Devprime® y los servicios relacionados, como la resiliencia, el reintento y la interrupción de circuito, que se ejecutan en un escenario de error en el flujo de ejecución de la aplicación, el registro automático, el control de errores y otras características de Devprime®.

Los adaptadores ofrecen un conjunto de servicios para la base del software (Web, Security, Observability, Heath Check, Services, Stream, State y App Center) y se encargan de los aspectos tecnológicos, ofreciendo aceleradores con inteligencia y comportamiento autónomo como se detalla a continuación:

Adaptador web
Esta característica proporciona la exposición de API, vistas web y archivos estáticos con soporte para la comunicación por gRPC, HTTP, GraphQL. Las API siguen la especificación OpenAPI (OpenAPI Specification) y se exponen utilizando el estándar Swagger y están listas para la integración directa con API Gateway de preferencia.

Adaptador de seguridad
Esta característica es compatible con los protocolos Open ID y OAuth 2, lo que garantiza la seguridad en la exposición de las API y la comunicación interna entre microservicios, lo que hace transparente la integración con proveedores de identidad como Identity Server, Azure AD, Amazon Cognito.

Adaptador de observabilidad
Esta función es compatible automáticamente con los tres pilares: registros, seguimiento y métricas utilizados por los equipos de ingeniería de confiabilidad del sitio (SRE). Los logs están estructurados para ser fácilmente indexados en herramientas como ELK (Elasticsearch, Logstash y Kibana). Trace sigue el estándar de rastreo distribuido/telemetría abierta, lo que permite la visualización en herramientas como Jaeger y otras. También es posible proporcionar métricas personalizadas para respaldar el negocio en el formato de Prometheus.

Adaptador de comprobación de estado
Esta característica comprueba la disponibilidad de la aplicación, lo que permite a los orquestadores de contenedores, como Kubernetes, supervisar el estado del contenedor y reiniciarlo si es necesario.

Adapter de Services
Esta característica simplifica la comunicación con servicios externos utilizando los estándares gRPC, HTTP o GraphQL, facilitando el trabajo de los desarrolladores de software con soporte para rutinas automáticas de Retry y Circuit Break, evitando que los fallos de integración perjudiquen a la aplicación, añadiendo resiliencia de procesos, estandarización y el mejor uso del recurso.

Adaptador de transmisión
Esta característica es compatible con los principales servicios de Stream para la emisión y recepción de eventos con las principales tecnologías del mercado, como Kafka, RabbitMQ, Azure Service BUS, AWS SQS y mecanismos automáticos de reintento, interrupción de circuito y dependencia que se activan si se producen errores. No se requieren implementaciones adicionales para su uso, simplemente cambie la configuración y elija la secuencia preferida.

Adaptador de estado
Esta característica es compatible con enfoques modernos de persistencia que siguen el concepto de “persistencia políglota”, como SQLServer, MongoDB, Redis y otros. El desarrollador de software puede optar por usar código de base de datos nativo, EF (Entity Framework) o Dapper. Las rutinas de reintento y corte de circuito se activan automáticamente en caso de fallos.

Adaptador AppCenter
Esta característica proporciona una integración con Devprime AppCenter para obtener información de microservicios, cambiar configuraciones distribuidas en tiempo real y estadísticas de aplicaciones.

Última modificación April 11, 2024 (cc33f7e6)