| Rate Limiting plugin |
| ==================== |
| |
| This ATS provides basic rate limiting functionality, it currently has two modes: |
| |
| * As a remap plugin, it will limit the number of concurrent transactions |
| * As a global plugin, it will limit the number of concurrent TLS connections |
| |
| TODO |
| ==== |
| |
| This is still POC / MVP, and needs work. Here's a short list of ToDo items: |
| |
| * We ought to have a YAML configuration, and YAML parser, for the SNI limiters. |
| |
| * The global YAML configuration(s) also should be reloadable at run time. This |
| likely is best done replacing the entire SNI selector, at which point care has |
| to be taken when replacing the current selector, and when to delete it (ref-count?). |
| |
| * The per-remap rules each creates its own queue processing continuation. This is |
| pretty inefficient, and it would make sense to make a new TXN based selector, which |
| keeps the list of all TXN limiters currently in used. Care has to be taken here when |
| reloading remaps, to only remove limiters which are no longer needed (should be ok |
| since the remap destructor only gets called after all ref-counts are zero). |