我正在 ASP.Net 中开发文件托管服务,用户将根据他们购买的计划拥有一定数量的存储和传输带宽。
考虑到我将使用 Amazon S3 存储文件这一事实,我正在寻找一种方法来跟踪每个文件使用的带宽量,以便我可以将此消耗与某个用户相关联并在他到达时通知他他帐户的限额。
我怎样才能做到这一点?
您可以为正在使用的 URL 编写路由前端。然后,您可以跟踪正在创建的图像及其大小。现在您有了这些信息,您可以跟踪请求的数量并计算带宽。查找 URL 会稍微慢一点,但只需将图像下载到浏览器一次。
您可以启用日志记录,获取日志文件并计算每个用户的统计信息。
我能说的最好的,他们不提供那种级别的报告粒度。我能想到的唯一方法是托管一个从 S3 抓取文件的代理,记录带宽然后将其返回给用户。不幸的是,您为带宽支付了两次费用,然后只是为了计量它。也许另一种定价模式会起作用?