我正在开发 Web 服务,并且对超时/异常处理方法有疑问。
我有一个 web 服务 (WS1) 和一个客户端 C。客户端从用户接收一些操作并调用 WS1 进行一些不需要向用户提供响应的操作。
我可以通过 2 种可能的方式设计应用程序中的错误处理 -
从C调用WS。如果调用成功,WS会返回一个token。如果 C 出于任何原因(可能是 WS 中的故障或网络超时)没有获得令牌,它将存储在数据库中,并且某些作业将在稍后重试该操作。
从 C 调用 WS 并结束帖子。如果有任何问题,WS 将 ping 回 C(在单独的调用中)。如果没有 ping 回,则假设事务已通过。
一般来说,有哪些选项可以确保 WS 调用成功。如果事务在第一次尝试中失败,有哪些方法可以重试操作?