gpt4 book ai didi

performance - Azure - 如何同时将同一 Blob 的性能提高 3000 - 18,000 个用户?

转载 作者:行者123 更新时间:2023-12-02 06:11:50 24 4
gpt4 key购买 nike

Azure - 如何提高 3000 - 18,000 个客户端在 5 分钟范围内下载的同一个 Blob 下载的性能? (无法使用 CDN,因为我们需要使用 SAS 将文件设为私有(private))。

要求:

  • 我们无法使用 CDN,因为文件或“blob”需要保密。我们将针对所有同时下载请求生成 SAS key 。
  • 文件/blob 将是在考试开始时间前 24 或 48 小时上传的加密考试。-3000 - 18,000 次下载,在考试开始前 5 - 10 分钟的时间内同时开始。
  • 172 – 1000 个 Blob 。大小(53 K 字节 – 10 M 字节)。
  • 我们有一项网络服务,可以验证学生信息、密码、考试日期/时间是否正确。如果正确,则生成 URI 和 SAS。
  • Azure 站点表示单个 Blob 的速度仅为 480 Mbit/s。
  • 但 Azure 网站的另一部分提到高达 20,000 事务/秒 @ 20 Mbit/秒。

想法?

  • blob 的快照有帮助吗?
    • 我认为只有当您知道源 blob 在下载期间正在更新时,快照才有用?
  • 溢价会有帮助吗?
    • 我认为高级只是意味着它以更高的价格存储在 SSD 上),但我们需要更多带宽,并且许多客户端访问相同的 blob。
  • 创建 50 份相同考试的副本会有帮助吗?
    • 然后在每个客户端浏览器中轮流浏览该文件的每个副本。

在 Azure 论坛上列出 https://social.msdn.microsoft.com/Forums/azure/en-US/7e5e4739-b7e8-43a9-b6b7-daaea8a0ae40/how-do-i-increase-performance-on-the-same-single-blob-download-for-3000-18000-clients-all?forum=windowsazuredata

最佳答案

我会使用 Redis 缓存将 blob 缓存在内存中,而不是使用 blob 作为源。在 Azure 中,您可以启动适合您的卷大小的 Redis 缓存。那么你就不受 blob 服务的限制。

请求第一个文件时
1. 检查 Redis 缓存中的文件。
a.Found - 从缓存中提供文件。
b.Not Found - 从 blob 中获取文件并将其放入缓存中。提供文件。

下一个请求将使用缓存中的文件,释放 Azure Blob 存储。

这比在 blob 存储上复制文件更好,因为您可以在 Redis 缓存中设置过期时间,它会自行清理。

https://azure.microsoft.com/en-us/documentation/articles/cache-configure/

关于performance - Azure - 如何同时将同一 Blob 的性能提高 3000 - 18,000 个用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31147579/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com