我们正在开发一个 iPhone 应用程序,该应用程序使用 cloudfront 显示来自 amazon S3 的图像。尽管 cloudfront 提高了图像的下载速度,但如果我们与另一个没有 CDN 的 Linux 服务器相比,它的速度还是慢了一点。因此我们想知道如何进一步改进 iPhone 应用程序的图像加载。
请告诉我们
最佳答案
您还没有解释如何测试这两个环境以及速度差异是什么。
请记住,要真正评估 CDN 的性能,您必须从全局多个点而不是从一个位置对其进行测试。此外,在谈论图像的加载性能时,并不足以衡量实际的传输速率(下载速度),还需要连接延迟和 DNS 解析时间。
通常,为了在下载图片时获得最佳效果,您需要确保正确处理四件事:dns、缓存、持久连接 和并行下载。
要减少 DNS 解析时间,请确保优化 DNS 规则并使用快速 DNS 服务(例如,过多的 CNAME 解析可能会降低 DNS 速度)。
要利用 CDN 的全部功能,您的缓存规则应该具有非常长的到期时间(使用
Cache-Control
或Expires
header ) .如果您从任何服务器下载多个图像,最好使用支持持久连接(支持 Keep-Alive)的客户端。这样,如果您重复使用同一连接,就不会浪费时间重新建立新连接。
最好并行下载多个图像,而不是使用顺序下载。 Web 浏览器通常为每台服务器打开最多 6 个连接,但您可以稍微高于此数量。但不要夸大该数字,因为这会影响性能。
关于ios - 如何加快亚马逊云前端的图像加载速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18397319/