我有一个用户上传图片的网站.这些图像被调整为各种尺寸.我目前在我的服务器上执行此操作,但考虑在AWS上进行处理或类似的操作.这是一个好主意吗?
我一直在使用EC2和专用服务器来完成类似的任务,这里有一些提示:
使用尽可能少的IO.如果您打算使用像ImageMagick这样的东西,请知道写入磁盘是浪费io资源(除非您想要缓存它.)PHP/GD允许您直接在http响应中发送jpeg.
尽快释放RAM:尽可能释放源和调整大小的图像.消除服务器交换内存的可能性.
上下文切换时EC2非常慢.所以尽可能少尝试.像Gimp这样的处理器非常缓慢(专用缩小0.2秒,EC2需要7秒.)此外,ImageMagick非常慢,周期.如果可以,请使用PHP/GD进行所有处理.
记得设置最大内存.您将需要内存中的两个图像副本(源和按比例缩小.)
最后但同样重要的是:从实时开始.不要从mysql队列和外部守护进程的overkill解决方案开始.从长远来看,这些将难以维持.所以在你制造火箭之前先试一试.
祝好运!