使用 ec2 创建存储在 s3 上的图像缩略图并在完成时与 Rails 进行通信的优雅方法?

2024-01-04

好的,快速总结一下我的设置和我想要完成的任务:

  1. 我有一个运行我的网站的 Rails 2.3.5 服务器。我的网站上有一个 Flash 应用程序,用户可以将图像直接上传到 s3。

  2. 上传完成后,rails 会收到通知。

  3. 当图像完成上传到 s3 并通知 Rails 时,我希望 Rails 向位于 ec2 上的某个位置发送一些帖子以创建两个缩略图(110x110 和 600x600)。

  4. 当创建缩略图并将其传输到 s3 时,我希望 ec2 上的任何进程都将帖子发送回 Rails,以通知缩略图创建已完成并位于 s3 上。

实现这一目标的最佳方法是什么?我看过诸如knife http://wiki.opscode.com/display/chef/Launch+Cloud+Instances+with+Knife非常简短,但我根本不熟悉使用 ec2 或类似服务。

Thanks


对于像我这样查找此内容的人,AWS 现在提供Lambda http://docs.aws.amazon.com/lambda/latest/dg/welcome.html

AWS Lambda 是一项计算服务,可让您轻松构建 快速响应新信息的应用程序。 AWS Lambda 运行 您的代码响应图像上传、应用内等事件 活动、网站点击或连接设备的输出。你可以 使用 AWS Lambda 通过自定义逻辑扩展其他 AWS 服务,或者 创建您自己的以 AWS 规模、性能和性能运行的后端 安全。借助 AWS Lambda,您可以轻松创建离散的、 仅在需要时执行并扩展的事件驱动应用程序 自动从每天几个请求增加到每秒数千个。

这是一个很好的演练,完美地回答了这个问题,处理 Amazon S3 事件 http://docs.aws.amazon.com/lambda/latest/dg/walkthrough-s3-events-adminuser.html。这个想法是让一个 node.js 包 - Labmda - 获得有关 S3 Bucket 事件(在我们的例子中创建对象)的通知,获取上传的对象,调整其大小,然后最终将其保存在其他存储桶中作为缩略图。由于您将拥有一个 Node.js 应用程序,因此在保存缩略图后,您基本上可以向您想要的任何服务发出任何类型的请求。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ec2 创建存储在 s3 上的图像缩略图并在完成时与 Rails 进行通信的优雅方法? 的相关文章

随机推荐