【问题标题】:How to remove load of Image processing from Server如何从服务器中删除图像处理的负载
【发布时间】:2016-10-15 03:02:49
【问题描述】:

我们有 20 个不同的网站,它们位于 AWS 的两台服务器上。所有网站都使用名为 DesignMaker 的 Web 应用程序(使用 ImageMagick 进行图像合成和更改的 MVC 应用程序)对用户图像进行繁重的图像处理。用户可以将图像上传到该应用程序并开始使用他们上传的图像进行一些设计。您可以假设所有图像处理都在代码中进行了优化。

我关心的是从主服务器的 Cpu 中移除繁重的图像处理负载并将其放在另一台服务器上。因此,我首先想到的是分离该应用程序并将其转换为在其他服务器上运行的 Web 服务。通过这种方式,我们将图像处理的负载放在了其他机器上。如果我错过了什么,请告诉我。

调用 API 进行图像处理是一种好方法吗?

还有什么其他选择?

【问题讨论】:

    标签: asp.net-mvc image-processing asp.net-web-api imagemagick


    【解决方案1】:

    从网络线程中移动图像处理是对的,这是一种不好的做法。

    如果是我(并且我已经在我从事的几个项目中这样做了),我会将图像从 MVC 应用程序上传到 AWS S3 容器,然后使用 SQS 或一些排队平台触发消息。然后让 Elastic Beanstalk 实例监听队列中的消息,当它收到消息时,它会从 S3 中提取图像并根据需要进行处理。

    (我是 Azure 人,如果我选择了错误的 AWS 服务,请见谅,但模式是一样的)

    【讨论】:

      猜你喜欢
      • 2017-03-11
      • 1970-01-01
      • 2015-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-03
      相关资源
      最近更新 更多