0

我的公司最近将 MongoDB 添加到我们使用的数据库中,并且事情进展顺利,但每隔一段时间我们就会遇到一个奇怪的错误。几乎不可能复制,并且在测试的最后一周只发生了四次,但是一旦我们投入生产,我们的客户将比我们测试时更频繁地使用该站点。我们正试图在它失控之前解决这个错误。

我们得到的错误是:(为可读性添加了换行符)

Fatal error: Uncaught exception 'MongoCursorException' with message 
'Failed to connect to: 10.0.1.114:27017: send_package: error reading from socket: 
Timed out waiting for header data' in 
/opt/local/apache2/htdocs/stage2/library/Shanty/Mongo/Connection/Group.php on line 134

我们在 PHP 中使用 ShantyMongo,它是一个远程连接。该错误确实是间歇性的,刷新页面足以让它消失。作为一个临时解决方案,我们将所有的 mongo 方法包装在一个 for...try/catch 中,这样如果抛出 MongoException,我们将重试该方法最多两次,希望它能够成功三个中的一个尝试,因为错误是如此不可预测。

4

0 回答 0