Overview
Objective
The objective of this feature is for CPS-NCMP to successfully forward notification to the correct topic(s) of a relevant subscription.
High-Level Work Flow
1 | Trigger event | DMI cm data notification event |
2 | Process flow |
|
3 | Outcome | Event forwarded to correct topics of subscribers |
Feature Components
Component | Responsibilities |
---|---|
NCMP |
|
Kafka | Consumer
|
Producer
| |
Database | Subscription information |
DME |
|
Potential Challenges with Dependencies
Challenge | ||
---|---|---|
Event ordering |
Service Layer Design
Mapping of events to correct subscriptions
Identifying topic for given subscriptions
Forwarding Notification based on subscription
Retry logic
Error Handling
Description | ||
---|---|---|
Dead-letter queues? | ||
No write access to kafka topic | Log failed request | |
Kafka topic does not exist | Log failed request | |
No valid topic name in subscription ID |
Performance Considerations
NCMP
Caching
Security Considerations
Data validation
Event consumed will be forwarded as is
Access control (write permissions) to topics is controlled by client
Testing
unit tests
integration tests
E2E
k6?
Monitoring and Logging
Metrics
count notification on not forwarded events
Logs
log of errors? log key events? messaged produced
Failed request when a client topic does not exist