据我所知,目前的情况是这样的:
>使用sql会话状态提供程序是可能的(正如我在某处阅读的),但它不受Microsoft支持.所以可以在将来停止工作.还需要一个WorkerRole来删除过时的数据.
Azure AppFabric缓存服务还在CTP中.
> TableStorageSessionProvider是Azure培训工具包中不推荐用于生产代码的一段代码.
你会选择什么?
解决方法
如果你本周上线,我会推荐sql Azure会话状态提供者.有一个很好的博客文章
here,提供你需要的一切.
你是正确的,因为这个解决方案没有得到Azure的正式支持.然而,现在应该可以正常工作,一旦这样的话,你可以很容易地转移到Azure AppFabric缓存(如Igor的建议).
** EDIT 6/16/2014 **请参阅MVC movie app with Azure Redis Cache in 15 minutes的Azure Redis Cache(Preview)ASP.NET会话状态提供程序部分
编辑5/23/2012自此答案以来,有很多变化.截至2011年8月,通过通用供应商正式支持sql Azure中的缓存.查看this博客文章的更多信息. 100MB数据库的定价起价为4.99美元.
AppFabric缓存自2011年5月起生效.缓存开始为128MB,价格为45美元. AppFabric Cache的详细信息为here.请注意,交易次数,连接数和带宽(以及存储容量)都有小时配额.
EDIT 6/7/2012还有一个更新:使用2012年春季发行版,现在可以使用现有Web或Worker角色中的一部分RAM创建缓存,而且还可以创建一个新的缓存角色来创建专用的高速缓存在您的部署(为了实例的成本). Scott Guthrie发表了关于它的here.这些功能在新的v1.7 SDK中可用.