Aws lambda 如何将客户端JS与AWS lambda同步?

Aws lambda 如何将客户端JS与AWS lambda同步?,aws-lambda,Aws Lambda,我一直在阅读有关AWS Lambda新技术的文章,并尝试了其中的一些示例。我真正想做的是,当我们将一个新的数据文件上传到S3时,向客户提供新的内容,但我不清楚我是否能够或者如何做到这一点 我可以看到,我可以在lambda中运行一个脚本来记录对S3的更改,但是如何将这些更改与在浏览器中运行的客户端脚本同步呢。可能吗 显然,我可以轮询bucket对象并在其更改时显示新内容,但是当它更改node.js的方式时,是否有办法将数据推出?这样我就不需要在它没有变化的时候不断地敲击它了。我认为在工作中不可能有

我一直在阅读有关AWS Lambda新技术的文章,并尝试了其中的一些示例。我真正想做的是,当我们将一个新的数据文件上传到S3时,向客户提供新的内容,但我不清楚我是否能够或者如何做到这一点

我可以看到,我可以在lambda中运行一个脚本来记录对S3的更改,但是如何将这些更改与在浏览器中运行的客户端脚本同步呢。可能吗


显然,我可以轮询bucket对象并在其更改时显示新内容,但是当它更改node.js的方式时,是否有办法将数据推出?这样我就不需要在它没有变化的时候不断地敲击它了。

我认为在工作中不可能有任何推动机制。推送要求服务器侦听响应。这意味着从技术上讲,唯一可能发生这种情况的方法是让每个客户端都有一个正在tcp端口上侦听的服务在运行。就移动客户端而言,他们实际上是在监听短信

在大多数情况下,push实际上仍然是堆栈不同级别的pull。即使在顶级应用程序中,代码也可能允许推送范例,但如果我们将代码看得低一级,它可能是一种拉动

举个例子,如果您确实设计了定期JS脚本,它将查询S3、lambda或更新。客户端用户界面不知道它正在这样做,因此对他们来说这似乎是一种推动;这种神奇的数据流传输到他们的客户端,就像流视频一样


我建议咬紧牙关,在API网关中设置一个缓存,并在S3更改上使用预期的TTL,然后让客户机查询该资源。

起初我在考虑Cognito sync,但在尝试进行概念验证时遇到了一些障碍。所以我要提出一个更疯狂的建议:a。在您的后端服务器上,实现一个将由Lambda函数调用的端点……它基本上会说,嘿,S3中有新数据!在这一点上,服务器可以将事件推送到客户端,客户端可以轮询一次新数据。我刚才发布了这个问题,但node.js实际上可以使用websockets推送。Meteor是一个基于node.js的框架,它会自动完成这项工作。还有一些新的HTML5技术,例如服务人员,可能可以实现这一点。