具有DiskCache的ImageResizer预期性能和最佳实例选择

时间:2014-03-31 01:25:45

标签: .net azure azure-storage-blobs imageresizer

我正在考虑将ImageResizer用于照片共享应用,并希望获得两个问题的帮助。

  1. 建议使用的Azure实例类型(或服务)是什么?在我看来,使用大型实例扩展比使用许多小实例更好,这是一个公平的假设吗?或者是否会建议使用内存密集型虚拟机?

  2. 鉴于推荐的Azure设置,我们可以期望每分钟(或者第二个或每小时......无论使用哪个指标都更好)服务多少标准尺寸的照片(比如2M),没有使用DiskCache插件?

  3. 基本上我想弄清楚我需要多少Azure实例才能在不降低性能的情况下为一百万张照片服务一分钟以及什么是获得最佳性能的理想Azure设置。

    我已经阅读了best practice guide,这些信息非常好,但对于回答最佳Azure设置并没有帮助。

    非常感谢任何指导!

1 个答案:

答案 0 :(得分:1)

最佳设置取决于很多因素:

  1. 平均。源图像大小,以字节为单位(增加网络带宽要求)
  2. 以百万像素为单位的源图像尺寸。 (增加RAM要求)。
  3. 结果图像大小(以字节为单位)。 (增加磁盘空间要求)
  4. 源图像计数。 (增加blob存储要求,网络带宽要求)
  5. 平均。每个源图像的输出版本。 (提高缓存磁盘速度和大小要求)
  6. 活动与归档图像集。图像集的百分比达到90%的流量? (影响缓存调整和CDN使用)
  7. 需要应用哪种授权规则? DiskCache可以执行任何操作,但CDN只能执行过期链接。
  8. 源文件和输出文件的格式是什么?根据设计,PNG每百万像素比JPEG低10倍。 TIFF可以包含任何类型的压缩算法 - 有些是快速解压缩,有些是算法冰川。
  9. 网络带宽成为瓶颈的情况并不少见,特别是如果您正在使用blob存储。

    我通常建议每个实例使用3.75-8GB RAM,以及可用核心的Web园景实例,然后进行基准测试。

    我们目前不会在虚拟实例上发布基准测试,因为性能非常依赖于同一硬件上的其他虚拟实例。

    AFAIK,我们的用户(即使是那些拥有数PB图像的用户)都不需要扩展过去3个节点的速度;通常甚至那些只是为了供应。

    最好的办法是download the software并使用您的数据进行测试。 Cookie切割器基准测试的变量太多对您有用,唯一重要的成本是几个小时的时间。安装通常大约需要5分钟,但配置VM可能需要一段时间。