我有两个基于Spring Boot实现的微服务,它们使用rest调用进行交互。现在,我想添加故障恢复功能,让我们举个例子
现在我可以实现Spring异常处理程序,但是在这种情况下会引发所有异常。我的原因。令我感到困惑的是,我看到了两个Connection Reset(我认为是逻辑上的),但它有时也会引发HttpMessageNotWritable异常。
如果我可以处理这些异常,则可以将响应放入队列,服务1将从队列中提取响应。
任何帮助。将不胜感激。谢谢
答案 0 :(得分:0)
您应该考虑service1如何知道在service2上有等待它的响应,它是对哪个请求的响应。另外,如果service1在崩溃时处于事务中,则该事务未提交。是否应该为service1部分启动新事务并要求service2排队等待响应?
最好在service2上使用REST接口,并确保数据操纵操作是幂等的。在这种情况下,当service1恢复时,它可以重复对service2的调用,并且不需要队列