2014-02-05 85 views
3

当我的应用程序的用户可以上传个人资料图片(最大大小为5MB)时,我有我的应用程序中的用户配置文件页面。借助原始图像生成三种类型的图像并使用回形针上传s3。回形针背景个人资料图片上传s3与部分处理

现在的问题是,如果用户上传5MB图像,则需要花费时间在s3上处理和上传该图像。到用户正在等待图像刷新时为止。

如果我背景这个过程,那么用户在一段时间内可能看不到上传的图像。所以他可能不确定图像是否上传。

我正在考虑部分处理用户通知图像,然后在后台执行其他图像上传,但不知道我们如何才能做到这一点。

此外,如果为用户使用单一图像生成和上传可能需要时间。

那么我能在上述情况下做什么或者我应该只在服务器上保存配置文件映像而不是S3。

+0

如何定期备份文件中的S3 – Viren

回答

0

我在同样的事情上挣扎着。

有一点可能有用的是使用S3DirectUpload,虽然它是基于Carrierwave。它允许你添加进度条,这样至少用户可以看到图像正在上传,所以他们不觉得那么糟糕。

另一种选择是在占位符图像加载,如果个人资料图片不存在(这种方式,你可以在后台上传)。

user.profile_picture.present? ? user.profile_picture : some_placeholder_image 
+0

其实我在轨图像处理(产生缩略图等)结束,并推动他们的S3。在此之后,我正在用户个人资料页面上提取S3缩略图。 我想改善这一点,但以上将无法帮助 –

+0

公平的。我很抱歉,我无法帮助。但是,通过[jQuery文件上传](http://blueimp.github.io/jQuery-File-Upload/)文档查看可能是一个想法,因为只要添加文件,它就支持小预览。 – RustComet