Following are the related cloud design patterns which can be used in conjunction with this pattern:
- Auto-scale: Throttling can be used as an interim measure while a system auto-scales, or to remove the need for a system to auto-scale.
- Queue-based Load Leveling pattern: Queue-based load leveling is a commonly used mechanism for implementing throttling. A queue can act as a buffer that helps to even out the rate at which requests sent by an application are delivered to a service.
- Priority Queue pattern: A system can use priority queuing as part of its throttling strategy to maintain performance for critical or higher value applications, while reducing the performance of less important applications.