0

我在网上卖票,每张票都有票号(32字节随机)和票号(长序列)。我有 2 种类型的小客户,他们要求大约 1-10k 钥匙和批发商要求 50k-1m 门票,整个销售商希望门票 ID 尽可能连续。我不应该向 2 个客户出售同一张门票。门票是生成并放入 sql db,我可以在前端提取/保存(天蓝色实例),这就是我的计划。在前端机器上,我应该使用什么缓存,我既可以按顺序原子方式读取/标记,也可以在 asp.net 请求中使用。

4

1 回答 1

0

如果您在 Windows Azure 上开发解决方案,Windows Azure 缓存是您最好的选择。启用“本地缓存”时速度很快,因为延迟几乎为 0 毫秒,但您的数据必须适合内存。您可以在此处找到有关 Windows Azure 缓存的更多信息。

如果您想尝试 Memcached,您当然可以尝试使用 Memcached 和“带有本地缓存​​的 Windows Azure 缓存”,您将看到的差别不大。SMarx 在此处有一篇关于在 Windows Azure 上使用 Memcache 的精彩文章

我认为您可以使用SQLCacheDependency类来创建一个缓存项依赖项,该依赖项与数据库中的票据项有关。当一个工单被代理拿走时,工单项目行将发生变化,这将导致依赖无效,工单 ID 将从缓存中。

是 .NET Framework 应用程序的模式和实践指南,它可以指导您编写更好的方法来缓存内容以进行原子访问。

我建议你也看看这里: ASP.NET 中缓存的模式和最佳实践是什么?

于 2012-05-30T06:01:53.730 回答