我在线销售门票,每张门票都有门票密钥(随机32字节)和门票ID(长序)。我有两种类型的客户小,谁要求约1-10k的钥匙和批发商要求50k-1m的门票,整个salers希望门票ID尽可能顺序。我不应该向2个客户出售同一张票。门票生成并放入sql db和我可以在前端拉出/保存(azure实例),这就是我的计划。在前端机器上我应该使用哪些缓存,我可以按顺序原子方式读取/标记,也可以在asp.net请求中使用。
答案 0 :(得分:0)
如果您在Windows Azure上开发解决方案,则Windows Azure Cache是您最好的选择。当" Local Caching"启用时延迟几乎为0毫秒,但您的数据必须适合内存。您可以在Windows Azure Cache here上找到更多信息。
如果你想尝试Memcached,你肯定可以尝试使用Memcached和" Windows Azure缓存和本地缓存",你会看到没有太大的区别。 SMarx有一篇关于在Windows Azure here上使用Memcache的精彩文章。
我认为您可以使用SQLCacheDependency类在数据库中使用故障单项创建缓存项依赖项。当代理程序获取故障单时,故障单项目行将更改,这将导致依赖项无效,故障单ID将来自缓存。
Here是.NET Framework应用程序的模式和实践指南,它可以指导您编写更好的方法来缓存内容以进行原子访问。
我建议你也看看这里: What Are the Patterns and Best Practices for Caching in ASP.NET?