Saltar al contenido

Fomentar el microservicio al evento

Este tutorial se basa en la aplicación de simulación comercial para publicar eventos en el tiempo de ejecución de Kyma. Después de la aplicación comercial simulada para conectarse al dev Es decir, crearemos un ejemplo de servicio de SAP Commerce Cloud – Eventos. El ejemplo de servicio permitirá cualquier micro-servicio o función lambda dentro del dev Spacename se enumerará para estos eventos definiendo Trigger El disparador determina la fuente de un evento, la aplicación comercial simulada y el tipo de evento, command.created, en este caso su suscriptor será un microservicio API Go MSSQL.


Paso 1: clonar el repositorio de Git

  1. Copie la URL del repositorio.

En su navegador, navegue hasta kyma-runtime-extension-examples.

Selecciona el Código y seleccione una de las opciones para descargar el código localmente, o ejecute el siguiente comando usando su CLI en la ubicación de la carpeta que desee:

git clone https://github.com/SAP-samples/kyma-runtime-extension-samples

Hecho

Inicie sesión para responder la pregunta

Paso 2: examinar la muestra

  1. Abre el api-mssql-go directorio en el editor que necesita.

  2. Examine el contenido de la muestra.

  3. Dentro de internal/api/events.go archivo puede encontrar el código que se ocupa del consumo de datos de eventos. Este código espera obtener una carga útil JSON que contenga orderCode. Esta función está expuesta en la ruta /orderCodeEvent, definido en cmd/api/main.go.

  4. Dentro de k8s directorio donde puedes encontrar el archivo event-trigger.yaml que contiene la definición Trigger que define cómo se debe realizar un evento. Las áreas de interés incluyen:

PropiedadSuelteValor
spec.filter.attributes.eventtypeversionVersión del evento para suscribirsev1
spec.filter.attributes.sourceEl nombre de la aplicación que publica los eventos.burla-de-comercio-falso
spec.filter.attributes.typeTipo de evento para listarcommand.created
spec.filter.subscriber.ref.nameNombre del servicio para recibir el eventoapi-mssql-go
spec.filter.subscriber.uriEl extremo URI del servicio que recibe el evento./orderCodeEvent

Hecho

Inicie sesión para responder la pregunta

Paso 3: comenta el tráfico de enlaces en el espacio de nombres

En este paso, conectará la aplicación simulada a la dev Espacio de nombres. Este proceso se utiliza para habilitar el uso de API y eventos de aplicación falsos para el Nombre limitado. La API y los eventos aparecerán en el Catálogo de servicios del Nombre.

  1. Abra la consola de ejecución de Kyma.

  2. Selecciona el Integración> Aplicaciones / Sistemas opciones de menú.

  3. Escoger burla-de-comercio-falso.

  4. Escoger Crea una conexión.

  5. Selecciona el dev Espacio de nombres.

  6. Escoger Crear.

Hecho

Inicie sesión para responder la pregunta

Paso 4: crear un servicio

En este paso, creará un ejemplo de servicio de los eventos que reveló la aplicación simulada. Esto se hace para permitir los procedimientos dentro del dev Espacio de nombres.

  1. Abra la consola de ejecución de Kyma.

  2. Selecciona el dev Espacio de nombres.

  3. Selecciona el Gestión de servicios> Catálogo opciones de menú.

  4. Escoger burla-de-comercio-falso.

    Instituto de servicio

  5. Selecciona el SAP Commercial Cloud – Eventos plan de servicio.

    Plan institucional de servicio

  6. Escoger Agregar.

    Plan institucional de servicio

  7. Escoger Crear crea un ejemplo.

Hecho

Inicie sesión para responder la pregunta

Paso 5: aplica un disparador

En este paso, definirá el desencadenante que se utiliza para crear un suscriptor de eventos. Esto le permitirá especificar que su api-mssql-go Una aplicación API, por referencia a su servicio, debe obtener la carga útil del command.created salida.

  1. Aplique Trigger ejecutando el siguiente comando en la CLI:

    kubectl -n dev apply -f ./k8s/event-trigger.yaml
    
  2. Confirme que Trigger se creó correctamente pasando este comando:

    kubectl get trigger api-mssql-go-trigger -n dev -o yaml
    

    Después de la definición de Trigger, busque un objeto de estado que indique el estado de los recursos relacionados:

    status:
      conditions:
      - lastTransitionTime: "2020-10-07T16:09:44Z"
        status: "True"
        type: BrokerReady
      - lastTransitionTime: "2020-10-07T16:09:26Z"
        status: "True"
        type: DependencyReady
      - lastTransitionTime: "2020-10-07T16:09:44Z"
        status: "True"
        type: Ready
      - lastTransitionTime: "2020-10-07T16:09:27Z"
        status: "True"
        type: Subscribed
      - lastTransitionTime: "2020-10-07T16:09:26Z"
        status: "True"
        type: SubscriberResolved
    

Hecho

Inicie sesión para responder la pregunta

Paso 6: caso de prueba

Una vez que se hayan completado los pasos de configuración, ahora puede probar el caso para validar que está funcionando según lo previsto.

  1. Abra la aplicación falsa en el navegador seleccionando Configuración> APIRules del menú.

  2. Selecciona el Anfitrión entrada para el burla de comercio APIRule para abrirlo en el navegador. Esta URL debería verse así:
    https://commerce.*******.kyma.shoot.live.k8s-hana.ondemand.com

  3. Selecciona el APIS remoto pestaña.

    Prueba el caso

  4. Selecciona el SAP Commercial Cloud – Eventos elección.

  5. Don Actas, Seleccione command.created.v1.

  6. Cambiar el orderCode valor como desee y seleccione Enviar evento.

    Prueba el caso

  7. Con la consola Kyma, seleccione Configuración> APIRules del menú.

  8. Selecciona el Anfitrión entrada para el fe-ui5-mssql APIRule para abrir la aplicación en el navegador. Esto debería verse así:
    https://fe-ui5-mssql.*******.kyma.shoot.live.k8s-hana.ondemand.com

  9. Ahora debería ver los detalles recibidos por el evento como se muestra a continuación:

    Prueba el caso