List 在Windows azure缓存中存储和迭代列表

List 在Windows azure缓存中存储和迭代列表,list,caching,azure,List,Caching,Azure,我正在制作一个azure web角色服务,在其中我有一个很长的对象列表(数千个),我根据不同的标准对其进行筛选。我需要缓存列表,但我有一个顾虑,那就是: 假设我有许多角色实例,列表缓存在一台机器上,而另一台机器想要迭代列表。是否将列表复制到请求计算机的内存中并在之后进行迭代?Windows Azure缓存已序列化-这意味着当您存储要缓存的项时,它将被序列化(默认情况下使用.Net XmlSerializer,但您可以更改此设置),当从缓存中检索到该项时,它将被反序列化为新对象 因此,是的-当您从

我正在制作一个azure web角色服务,在其中我有一个很长的对象列表(数千个),我根据不同的标准对其进行筛选。我需要缓存列表,但我有一个顾虑,那就是:


假设我有许多角色实例,列表缓存在一台机器上,而另一台机器想要迭代列表。是否将列表复制到请求计算机的内存中并在之后进行迭代?

Windows Azure缓存已序列化-这意味着当您存储要缓存的项时,它将被序列化(默认情况下使用.Net XmlSerializer,但您可以更改此设置),当从缓存中检索到该项时,它将被反序列化为新对象


因此,是的-当您从缓存中检索列表时(即使在同一个角色实例上!),您将在内存中有一个新的列表,该列表将被迭代。

我的回答中有一个警告-它假定您正在使用Azure缓存,或者您已经设置了HttpSession以使用此缓存,也可以在不启用azure缓存的情况下使用HttpSession-在这种情况下,您将在每个角色上有单独的列表-不好!