Design Patterns: Queue-Based Load Leveling Pattern

By introducing an Asynchronous Queue between a task and a service, you will be allowing the service to handle the messages at its own pace