Skip to content

Service-Level Architecture ​

NDP Microservices Interaction ​

This diagram shows how the Egypt NDP microservices interact with each other and the infrastructure components.

Prescription Service Flow ​

Dispense Service Flow ​

Service Communication Patterns ​

1. Synchronous REST APIs ​

Used for:

  • Real-time queries
  • CRUD operations
  • Registry lookups

2. Asynchronous Events (Kafka) ​

Used for:

  • Audit logging
  • Notifications
  • Data replication
  • Analytics

3. Caching Strategy (Redis) ​

Used for:

  • Registry data
  • Session management
  • Rate limiting
  • Temporary storage

Service Dependencies Matrix ​

ServicePostgreSQLMySQLMongoDBRedisKafkaConsulVault
Prescription Serviceβœ…βŒβŒβœ…βœ…βœ…βœ…
Dispense Serviceβœ…βŒβŒβœ…βœ…βœ…βœ…
Patient Registryβœ…βŒβŒβœ…βŒβœ…βœ…
HPR Registryβœ…βŒβŒβœ…βŒβœ…βœ…
Pharmacy RegistryβŒβœ…βŒβœ…βŒβœ…βœ…
Medicine DirectoryβŒβœ…βŒβœ…βŒβœ…βœ…
Audit ServiceβŒβŒβœ…βŒβœ…βœ…βœ…
Notification ServiceβŒβŒβŒβœ…βœ…βœ…βœ…

API Gateway Routing ​

Data Flow Architecture ​

Service Health & Resilience ​

Circuit Breaker Pattern ​

Health Check Architecture ​

Next Steps ​