【问题标题】:How to transfer files from iPhone to EC2 instance or EBS?如何将文件从 iPhone 传输到 EC2 实例或 EBS?
【发布时间】:2015-08-31 12:36:27
【问题描述】:

我正在尝试创建一个 iOS 应用程序,它将文件从 iPhone 传输到服务器,在那里处理它们,然后立即将结果返回给应用程序。

我注意到 AWS 提供了一个 SDK,用于将文件从 iOS 应用程序传输到 S3,但不传输到 EC2(或至少传输到可以附加到 EC2 的 EBS)。我想知道为什么我必须通过 S3,当我的业务逻辑不保证文件存储时。我曾使用 s3cmd 和 s3fs 等文件系统软件从 EC2 连接到 S3,但它们在将文件传输到 EC2 时速度很慢。我担心通过 S3 的路由会消磨时间,尤其是当用户期望结果在一瞬间。

能否请您指导我如何绕过 S3 路由将文件从 iOS 应用实时传输到 EC2(或 EBS)?

【问题讨论】:

    标签: ios iphone amazon-ec2 amazon-s3 amazon-ebs


    【解决方案1】:

    允许应用程序直接写入实例文件系统是不可行的,没有将其视为非常复杂的网络驱动器,更不用说您几乎肯定会遇到的安全问题。这确实是 s3 的用途。你说你看到 ec2 和 s3 之间的性能很差,这听起来一点都不好,这将是一个内部数据中心连接,它至少比从移动设备到亚马逊数据中心的连接快几个数量级.您确定您在同一区域创建了存储桶和实例吗?或者,它可能是您正在使用的客户端,不要尝试设置文件系统访问权限,只需使用 aws cli。

    如果您真的对直接访问 ec2 实例的想法很执着,您将需要通过一些网络连接来完成它,或者通过运行 Web 服务器,或者如果在 ios 上可用,则可能通过 ssh 使用各种副本.当 s3 已经为您完成时,设置它似乎毫无意义。最后,根据文件的大小,您可以使用 sqs 或某种数据库存储。

    【讨论】:

    • 感谢您的 cmets。我是新手,试图找出解决我问题的最佳方法。你的cmets给了我一些清晰。你是对的 AWS cli 比文件系统更好。这个关于 EC2 和 S3 之间传输速度测试的链接支持你的观点。 blog.codeship.com/aws-speed-test
    【解决方案2】:

    新手没关系!!我遇到了完全相同的处理问题,并通过运行一系列负载平衡的网络服务器来解决它,其中移动设备调用上传实用程序、上传文件、处理它,然后使用移动设备的签名 URL 将结果部署到 s3可以显示。它快速、可靠且安全。结果使用 CloudFront 进行缓存,因此一旦写入,就可以快速在移动设备上重新访问。希望这可以帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-01
      • 2013-10-24
      • 2017-04-17
      • 1970-01-01
      • 2012-07-17
      • 1970-01-01
      • 1970-01-01
      • 2018-05-28
      相关资源
      最近更新 更多