我有一个场景,其中有来自移动设备上的用户的图像和一些附带的数据。我使用,其想法是将图像存储在S3中,并将数据存储到数据库表中。
我正在使用Node处理这些数据。
为了将图像存储到S3上,我使用AWS。为了将记录存储到MySQL中,我使用了“mysql”NPM包。
问题
确保这两个事件顺利进行的最佳实践方法是什么?如果没有,请确保没有发生。因此,让我们想象一下S3 putObject已经完成并且没有错误,但是MySQL插入超时了。
解决方案
我可以想出很多--过去也做过很多。这里的真正问题是我认为什么是最佳实践,在研究堆栈溢出之后,我似乎找不到一个好的场景或最佳实践的答案来回答这个问题:
“当单个函数涉及两个或多个远程依赖项(可能容易出错)时,处理错误的最佳方法是什么?”?
我只是想知道有没有人知道答案?
谢谢大家
发布于 2017-03-01 15:47:15
好的问题,最好的做法是使用异步触发。这仅仅意味着,不要这样做,或者在事件被触发之前,使用事件包授予节点自定义事件流是一种方法。只需手动创建一个事件,然后侦听某个特定的响应,然后启动相应的响应,这只会确保您想要的是executed.The最好的方法是使用promisies的概念,与传统的基于回调的方法相比,承诺为执行、组合和管理异步操作提供了一种更简单的选择。它们还允许您使用类似于同步try/catch的方法处理异步错误。尝试使用蓝鸟作为节点.https://alexperry.io/node/2015/03/25/promises-in-node.html
https://stackoverflow.com/questions/42536006
复制相似问题