我们编写了一个 CMS 应用程序Ruby On Rails 3
,它Paperclip
用于处理文件上传和ImageMagick
图像处理。它一直工作得很好,我们很高兴。
对于新客户,我们要进行部署:应用程序服务器位于公共网络中,上传的内容 + 数据库存储在其内部环境中的安全计算机上。
我们现在有 2 个主要轨道:
从我们现在拥有的应用程序中创建 2 个应用程序:
一个媒体资产应用程序(由我们开发),使用基于 REST 的 API 处理所有上传的文件。图像将由 GUID 表示,我们将添加函数以便可以缩放和裁剪图像。
另一个应用程序是除了图像缩放部分和存储部分之外的大部分应用程序服务器。当请求上传的图像时,它将充当媒体资产应用程序的适配器,以获取正确大小和布局的所有文件。
优点:
- 我们可以控制正在发生的事情
- 本身可能是一个很酷的应用程序
缺点:
- 一个可能会增长并且非常复杂的项目
- 需要对我们当前的应用程序做出巨大的改变
- 开发时需要在本地运行多个 Rails 应用
进行 OpenStack 安装:
另一种选择是进行OpenStack
安装并配置Paperclip
为使用它。如果我们理解正确,Amazon S3
使用类似于OpenStack
并且Paperclip
应该可以针对自定义安装进行配置。
优点:
- 回形针和我们的设置不会受到太大影响
缺点:
- 运行本地安装并不简单
- 可能很难设置 OpenStack
- 如果产品失败,对产品的了解很少
有什么想法、想法、经验吗?