Servicios

El adaptador de servicios facilita la integración con servicios externos HTTP, gRPC, GraphQL, así como la integración con API seguras y la compatibilidad con las funciones Retry y CircuitBreak.

El parámetro “connections” define la configuración de las credenciales necesarias para acceder a una API protegida, por ejemplo, por KeyCloak o Auth0.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
"Devprime_Services": {
   "Timeout": "10",
   "CircuitBreak": "45",
   "Retry": "3",
   "connections": [
   {
      "Timeout": "10",
      "Name": "Service1",
      "TokenUri": "Put your provider url",
      "ClientId": "Put ClientId",
      "ClientSecret": "Put client secret",
      "GrantType": "client_credentials",
      "Audience": "Audience"
   }
   ]
},

En la tabla siguiente se detallan los parámetros de configuración y las conexiones personalizadas para el adaptador de servicios, que puede, por ejemplo, acceder a una API externa que requiere autenticación en un proveedor de identidades para la seguridad de acceso.

Servicios
Tiempo de espera Configura el tiempo de error por tiempo de espera
Ruptura de circuito Configura la duración de CircuitBreak
Reintentar Configurar el número de intentos en caso de que se agote el tiempo de espera
Conexiones
Nombre Define un identificador único para esta conexión
Tiempo de espera Establecer un tiempo de espera personalizado
TokenUri Configura la URL del proveedor de identidades
ClientId Configure el ClientId
ClientSecret Configurar la contraseña
GrantType Establece el tipo de “Subvención”, por ejemplo, “client_credentials”
Audiencia Defina la audiencia, por ejemplo, “Audiencia”

Ejemplo de YAML con la configuración de la aplicación:
Para exportar las configuraciones como una variable de entorno y usarlas en Kubernetes, ejecute el comando en la CLI de Devprime:
dp export kubernetes

1
2
3
4
5
- name: DevPrime_Services
   value: "retry=3|||circuitbreak=45|||timeout=10|||connections=
   [audience=Audience,clientid=Put ClientId,
   clientsecret=Put client secret, granttype=client_credentials,
   name=Service1,timeout=10,tokenuri=Put your provider url]"

Explore ejemplos de implementación:

Última modificación January 10, 2024 (967dcac3)