A bridge between REST and a system that only speaks SOAP
REST · JSON→adapter→RabbitMQ→SOAP · XML
- Context
- New services exchange data over REST and JSON, while the core domain system exposes only SOAP services that cannot be changed.
- Decision
- An adapter microservice in Django: REST in, SOAP out, with an asynchronous flow through RabbitMQ in between instead of a direct call.
- Rationale
- The adapter acts as an anti-corruption layer: the legacy model doesn't leak into new services. The queue decouples the clients' pace from the legacy system's pace and leaves room for retries.