### use cases

* execute within allowed window

-- psp.web

* 要求每个 cookie 每秒中不能发送过多的请求，否则将被拒
* 每当 psp.web gateway 给 oracle 发请求数据时，都需要先存在一个空闲的 orasock，这就需要 resource pool 的管理。

-- ext-hub

* ext-hub 如果不能立即向 worker proxy 转发请求，就必须先将请求保存到可靠队列上，这样当 worker proxy 可用时，就会调用该可靠队列的 resume，将可靠队列中积压的请求按照先进先出的原则发往 worker proxy，这样就可以请求最终可靠的发往 worker proxy。

-- 使用 super-queue 来控制 AutoReader 的阅读速度

* 添加 Pauser Plugin 来手动控制暂停和继续
* 添加 Batcher 来自动控制每批次读 n 本书，等待 Batcher 释放批次读完的事件
* 添加 Batcher 来自动控制每日阅读最大量，等待本日读完的事件
* 添加 ConcurrencyLimiter 来控制最大并发数
* 设置 timeout
* 添加 Stater plugin 来根据运行统计数据

-- 使用 super-queue 来控制短信代理发送的速度

* 添加 ConcurrencyLimiter 来控制最大并发数 32 个在途（带应答命令最大条数）
* 设置 timeout 为 30s，命令及其应答之间的时间间隔最大不能超过30秒，否则重发
* 每 5 分钟不能超过 n 条

-- 模拟阅读

* 需要限制器，对每个人的阅读任务控制速率，应该采用单线程，每隔随机秒数阅读一页
* 需要限制器，每天在几个随机时段进行阅读
这样一来，根本就看不出是机器阅读的