当业务需求和工作流程复杂时,为什么要让我的服务休息?

时间:2016-05-18 21:53:56

标签: rest asp.net-web-api restful-architecture restful-url

我的服务要求和业务工作流程有点复杂。首先,请考虑以下两个不同的选项。

enter image description here

在我的情况下,使用restful选项的问题是

  • 在restful选项中,基本上要区分操作意图,我 需要检查输入有效载荷。所以,我的控制器逻辑有点难看。
  • 对于每个操作,我需要检查特定的角色和权限。根据输入的有效负载,我需要先检查用户是否具有所需的权限,而不是像我们现在在RPS样式中那样在控制器方法级别使用它。
  • 对于某些操作,我需要检查订单的当前状态。例如,批准或拒绝当前处于草案状态的订单没有意义。在批准和拒绝之前,订单应处于待审批状态。所以,我需要调用DB来检查当前状态,这将影响性能。
  • 在我的情况下,监控和性能分析将变得非常复杂。
  • 解决生产问题变得复杂。因为输入 有效载荷需要记录和检查。需要检查http动词。
  • 我不认为只是因为暴露更少的端点而使其变得简单。现在,必须为此服务的客户提供清晰的文档 解释他们发送了什么输入以执行特定的操作 预期的行动。
  • 我的服务不是简单的内容交付应用程序,操作较少。将来,我可能需要支持比现在更多的操作。
  • 请不要告诉我,我可以在请求标头中传递要执行的操作。我不认为,它解决了上述所有问题。

那么,为什么我要为我的服务做好准备呢?

0 个答案:

没有答案