如何仅在调用端点(A)的特定时间后强制客户端调用端点(B)

时间:2019-07-22 20:13:34

标签: java rest spring-boot

我在Rest Controller中有两个端点(A&B)。我正在寻找一种方法,使我只能在调用端点A的特定时间后才能调用端点B。换句话说,如果有人在调用后等待一段时间之前调用端点B(获取休息方法),我想抛出异常端点A(后置休息法),以便端点A有足够的时间来完成其任务。

1 个答案:

答案 0 :(得分:0)

您没有开箱即用的解决方案。这是非常特殊的要求。

使用数据库,尤其是键值轻量级数据库(例如Redis)应该以一种优雅的方式解决您的问题,因为它还提供了the expire feature

  

设置密钥超时。超时到期后,密钥将   自动被删除。具有关联超时的键通常是   据说在Redis术语中是易变的。

您只有键才能定义和终止。

Map<String, Instant>的{​​{1}}或另一个bean中使用RestController可能很诱人,但我不建议这样做,因为它会将数据保存在服务器内存本身上。 服务器应保持无状态,以使其可水平扩展。