node 操作mongodb时候错误异常处理,怎么处理
如果其中一环then操作数据库报错或者服务器异常,断开的异常,但是之前then已经把数据插入数据库或者删除数据库的内,我应该怎么处理异常时候mongodb的数据库的内容.因为有时我服务器挂掉了,但是之前操作的数据依然插入了.各位node大神有没有办法处理.本人小白一个.
3 回复
mongodb没有RDBMS的那种事务的概念,只有文档级别的事务,对于单个文档来说,要么全部写入,要么就不写入。如果你要求写入时多表的强一致性,用RDBMS的事务做,mongodb没法保证这些。如果非要用mongodb,可以考虑用一个数据检查程序不断跑,记录下有问题的数据,做进一步处理。
@nullcc 没有事务为什么node还用mongodb的那么多啊?只能你刚刚说的这个办法吗?
用不用事务要看具体使用场景,mongodb在一些简单的kv存取场景下简单高效,比如日志。不过一些数据关联性很强而且对一致性有一定要求的场景,比如银行业务,电商业务,个人感觉并不是很适用。因为这些业务不可能去牺牲数据的强一致性。node也可以适用其他数据库啊,看你怎么选择了。我提供的仅仅是我以前实践过的方案,如果你有更好的方案也可以一起探讨。