UTILS2 - Simulador de iniciación de pagos
Este documento explica cómo usar el simulador de iniciación de pagos. Hay dos enfoques recomendados para el tutorial: con docker y sin docker. Veámoslos:
Utilizar la aplicación a través de Docker
A continuación se muestra una entrada simple de docker para el simulador de iniciación de pagos:
payment-initiation-simulator-kafka:
image: registry.ipf.iconsolutions.com/sample-systems-payment-initiation-simulator-kafka:2.0.101
container_name: payment-initiation-simulator-kafka
ports:
- "8082:55555"
volumes:
- ./config/payment-initiation-simulator-kafka:/payment-initiation-simulator-kafka/conf
user: "${UID:-1000}:${GID:-1000}"
depends_on:
- kafka
Además, la aplicación necesitará configuración que se coloca en el archivo "application.conf" dentro de un directorio config relativo a la entrada de docker anterior. El archivo conf contiene:
common-kafka-client-settings {
bootstrap.servers = "kafka:9092"
}
connector {
default-receive-connector {
manual-start: true
}
default-send-connector {
manual-start = false
call-timeout = 30s
queue-size = 50
max-concurrent-offers = 500
resiliency-settings {
minimum-number-of-calls = 1
max-attempts = 1
reset-timeout = 1s
initial-retry-wait-duration = 1s
backoff-multiplier = 2
}
}
validator-error-handler-dispatcher {
type = Dispatcher
executor = "thread-pool-executor"
thread-pool-executor {
fixed-pool-size = 4
}
}
}
akka.kafka {
producer {
kafka-clients = ${common-kafka-client-settings}
}
consumer {
kafka-clients = ${common-kafka-client-settings}
}
}
Al ejecutarse, la ipf-developer-app escuchará datos en el puerto 8082. Este puerto también se expondrá a la máquina host. Los logs se exportarán a logs/ipf-developer.app-log relativo al archivo de docker.
Utilizar la aplicación sin Docker
Prerrequisitos
Para ejecutar este simulador se requiere:
-
Un runtime de Java 17
-
Un entorno Kafka que tenga:
-
Creación automática de topics habilitada, o
-
Topics creados para
PAYMENT_INITIATION_REQUESTyPAYMENT_INITIATION_RESPONSE
Opciones de configuración
Propiedad |
Descripción |
Valor por defecto |
common-kafka-client-settings.bootstrap.servers |
Define los ajustes de bootstrap del servidor para kafka. |
localhost:9092 |
server.port |
Define el puerto en el que se ejecutará la aplicación |
8082 |
Ejecución
Una vez descargado, colócalo en este directorio y ejecuta:
java -cp "payment-initiation-simulator-kafka-2.0.101-runnable.jar:config" -D"loader.main"="com.iconsolutions.samplesystems.paymentinitiation.simulator.PaymentInitiationSimulatorKafkaApplication" "org.springframework.boot.loader.launch.PropertiesLauncher"
La aplicación se iniciará y estará disponible en:
| Ten en cuenta que en Windows, los dos puntos en el comando de ejecución deben reemplazarse por un punto y coma. |