envoyproxy / envoyproxy/ratelimit

Way to create different time units?

オープン
#190 コメント 22 件 リアクション 18 件 担当者 0 名 GitHub で見る
help wanted
主要言語
Go
スター
2.7k
フォーク
535
PR マージ指標
30日以内にマージされた PR はありません

説明

We'd like to implement rate limiting such that certain time-periods have time have different limits (i.e. bursting). For example:

Scenario | Time-period (sec) | Max allowed operations
-- | -- | --
Send to Conversation | 1 | 5
Send to Conversation | 30 | 60
Send to Conversation | 300 | 100

Right now the configuration is pretty simple with:

```yaml
rate_limit:
unit:
requests_per_unit:
```

The problem is that I can't adjust the unit to be something like `30 seconds` or `5 minutes` (or at least I'm not clear how one would set that).

What would folks think about adding some unit multiplier such as:

```yaml
rate_limit:
unit_multiplier:
unit:
requests_per_unit:
```

This would allow someone to easily express `30 seconds` or `5 minutes`?

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。