我正在一个需要能够跟踪广告印象的网站上工作。我的环境是带有 IIS 的 ASP.Net,使用 SQL Server DMBS 和可能的 Memcached,因此访问数据库的次数不多。我还必须考虑可扩展性,因为我希望这个应用程序成为一个全球现象(保持我的手指交叉并努力工作)!所以情况如下:
- 我的客户将为 Y 次广告展示支付 X 金额
- 然后,这些广告展示(目前只有文字广告)将显示在特定页面上。
- 该页面由 Memcached 提供,减少了访问数据库的次数
- 展示广告时,需要为数据库的展示次数添加一个“+1”标记
所以困境是这样的:我需要能够将“+1”刻度标记添加到每个广告印象计数器但我不能在每次加载该广告时运行该 SQL 语句。我需要以某种方式将“+1”展示次数存储在会话(或其他地方)中,然后每 X 分钟、小时或天运行一次批处理。
请记住,可扩展性在这里是一个重要因素。您的任何建议将不胜感激。