我正在构建一个Rest API,并希望为作业管理器监视工具实现PATCH。
我所有的客户都知道作业经理的作业ID并非唯一。作业管理器会不时地重置作业ID(因此再次从1开始)。出于不同的原因,此操作以随机间隔(可能是几个月或几天)发生。
我想让工作经理向我发送有关工作的更新,但是我不希望它先执行GET来查找工作的唯一ID(比如说DBid),然后执行PATCH / jobs /:DBid 。这是由于性能和网络速度较慢的原因。必须等待GET才能阻止作业管理器,这很关键。
选择具有作业管理员ID的最新作业将返回正确的作业。但是如何在rest API中对此建模?
答案 0 :(得分:0)
您需要作业管理器的ID位于服务器上的“锅”中。我从事过这类工作,客户需要知道资源的内部ID,但该ID很少改变。它确实会更改,但很少更改。对此的解决方案是缓存服务,但是为此,听起来好像您需要在存储ID的服务器上有一个“ pot”。
处理PATCH的端点知道锅在服务器上的位置,因此可以从中加载ID。也许是一个简单的平面文件。
如果管理员需要更改ID,则无论处理该更改的进程如何,都将更改存储池中的内容。因此PATCH端点始终从锅中获取正确的ID。
如果管理员在更新ID时出现PATCH,则可以添加访问锅的同步。