Funktion
Der Microservice sendet dynamisch berechnete Zeiträume (z.b. alle Nachrichten älter als 60 Tage) in die Work Package Queue. Dazu wird dieser typischerweise periodisch per Cron gestartet. Der (noch zu archivierend) angegebene Zeitraum wird in Intervalle konfigurierbarer Größe unterteilt, um das Laden der Nachrichten zur Archivierung in kleinere Pakete zu teilen.
Konfiguration
Die Konfiguration des Microservices geschieht über die im “docker-compose”-Datei angegebene “application.yml”. Für die Konfiguration der Placeholder siehe Installation.
Das Standard Docker Image enthält die folgenden Konfigurationsmöglichkeiten:
spring:
rabbitmq:
host: ${RABBITMQ_HOST}
port: ${RABBITMQ_PORT}
username: ${RABBITMQ_USER}
password: ${RABBITMQ_PASSWORD}
production_queue: work_package_queue
starter:
period-from: ${PERIOD_FROM}
period-to: ${PERIOD_TO}
split-interval-in-minutes: ${SPLIT_INTERVAL_IN_MINUTES}
statefile:
file-name: statefile.properties
last-period-to: lastPeriodTo
Statefile
Das Ende des zuletzt verarbeiteten Zeitraums wird in der Statefile-Datei gespeichert. Beim nächsten Lauf wird dieser Zeitpunkt als Beginn des neuen Zeitraums betrachtet. Die Datei befindet sich im Docker-Container, kann jedoch zur besseren Kontrolle nach außen gemountet werden. Wenn der zu archivierende Zeitraum angepasst wird, ist es wichtig, die Statefile-Datei zu löschen oder zu leeren. Falls die Datei nicht gemountet ist, kann dies auch durch das Löschen und die Neuanlage des Containers erreicht werden.
Releases
Der Service wird in den folgenden Versionen als Docker Container aus dem Repo docker-nob-erp.next-level-apps.com/dynamic-starter-service
bereitgestellt.
2021-07-28
Ticket | Beschreibung |
---|---|
BTOB-7534 | Initiale Entwicklung |