我在Rest Controller中有两个端点(A&B)。我正在寻找一种方法,使我只能在调用端点A的特定时间后才能调用端点B。换句话说,如果有人在调用后等待一段时间之前调用端点B(获取休息方法),我想抛出异常端点A(后置休息法),以便端点A有足够的时间来完成其任务。
答案 0 :(得分:0)
您没有开箱即用的解决方案。这是非常特殊的要求。
使用数据库,尤其是键值轻量级数据库(例如Redis)应该以一种优雅的方式解决您的问题,因为它还提供了the expire
feature:
设置密钥超时。超时到期后,密钥将 自动被删除。具有关联超时的键通常是 据说在Redis术语中是易变的。
您只有键才能定义和终止。
在Map<String, Instant>
的{{1}}或另一个bean中使用RestController
可能很诱人,但我不建议这样做,因为它会将数据保存在服务器内存本身上。
服务器应保持无状态,以使其可水平扩展。