小编Yak*_*MIK的帖子

如何使用C#和SQL在高事务应用程序中每5分钟记录一次对数据库的更改?

想象一下这种情况:你有一个WCF网络服务,每天可以达到一百万次.每个匹配包含一个"帐户ID"标识符.WCF服务托管在分布式ASP.NET群集中,并且您没有对服务器的远程桌面访问权限.

您的目标是将每个帐户ID的"每小时点击次数"保存到SQL数据库中.结果应如下所示:

[Time], [AccountID], [NumberOfHits]
1 PM, Account ID (Bob), 10 hits
2 PM, Account ID (Bob), 10 hits
1 PM, Account ID (Jane), 5 hits
Run Code Online (Sandbox Code Playgroud)

问题是:如果不在每次点击时连接到SQL服务器数据库,如何才能做到这一点?

这是我想到的一个解决方案:将临时结果存储在System.Web.Cache对象中,监听其过期,并在Cache Expiration上,在Cache过期时将所有累积数据写入数据库.

有关更好方法的任何想法?

c# sql asp.net logging caching

6
推荐指数
1
解决办法
1456
查看次数

标签 统计

asp.net ×1

c# ×1

caching ×1

logging ×1

sql ×1