如果我使用.NET SDK从MVC应用程序添加Windows Azure队列项或blob存储引用,那么每个组件应该保留多长时间?
对于队列,我们有 CloudStorageAccount , CloudQueueClient 和 CloudQueue 。
对于blob存储,我们有 CloudStorageAccount , CloudBlobClient 和 CloudBlobContainer 。
我假设最好每个网络请求创建一次每个组件,但现在并不真正创建每个项目的成本。我再次假设,使用单例生命周期保持客户端之间的Web请求不是一个好的计划,但没有任何进展。
答案 0 :(得分:6)
这些.NET对象是轻量级的。它们都不会仅仅通过创建来分配资源或执行网络操作。除非你创建了很多它们,否则通常不值得缓存或集中它们。
我们甚至懒得在每个请求的基础上缓存它们 - 我们只是根据需要创建它们并扔掉它们。缓存它们可能会为垃圾收集器带来一些压力,但我怀疑它会有多大。