如何在Morphia/Mongo Java驱动程序上自动重试命令
在我们公司,我们在Amazon上部署了一个应用程序,它使用mongo作为数据库,在mongo Java驱动程序上使用Morphia 然而,有时我们会遇到一些通信问题,对mongo的一些查询、插入和更新最终会失败。我们希望告诉morphia(或者更可能是mongo java驱动程序)自动重试失败的命令一定次数,而不考虑原因(无论是网络/连接故障、套接字超时异常,甚至是错误的查询或类似情况) 我们可以尝试将mongo调用封装在try/retry块中,但这需要对代码进行一些重大重构,而且它可能仍然无法捕获morphia对mongo的所有调用 我们在Mongo Java驱动程序文档中找到了一些有趣的选项,例如自动连接和socketKeepAlive,但它们似乎只解决网络故障,而且似乎不适用于我们的设置如何在Morphia/Mongo Java驱动程序上自动重试命令,java,mongodb,configuration,connection,morphia,Java,Mongodb,Configuration,Connection,Morphia,在我们公司,我们在Amazon上部署了一个应用程序,它使用mongo作为数据库,在mongo Java驱动程序上使用Morphia 然而,有时我们会遇到一些通信问题,对mongo的一些查询、插入和更新最终会失败。我们希望告诉morphia(或者更可能是mongo java驱动程序)自动重试失败的命令一定次数,而不考虑原因(无论是网络/连接故障、套接字超时异常,甚至是错误的查询或类似情况) 我们可以尝试将mongo调用封装在try/retry块中,但这需要对代码进行一些重大重构,而且它可能仍然无法
我们是否可以使用其他配置选项来实现这一点?如果没有,你们建议我们如何解决这个问题?驱动程序或morphia中都没有重试命令的功能。您必须自己管理。驱动程序或morphia中都没有重试命令的功能。你得自己处理