如题,网站增加个统计ip的功能,于是有了如下代码:
每有一个ip访问,都会执行一次Count方法。
在一分钟500ip的时候,IIS就反应不过来了,CPU占用100%,求优化啊
(不含有数据库操作)
public static readonly List<IPLog> IPList = new List<IPLog>();public void Count(xxxxx)
{ var log = new IPLog()
{
IP = ip,
VisitTime = DateTime.Now
};
IPList.Add(log); if (IPList.Count >= 1000)
{ var clone = ipList.GetRange(0, IPList.Count);
IPList.Clear(); //保存到数据库(clone) //每1000IP提交到数据库一次
//已注释 }
}
繁花不似锦
MYYA
随时随地看视频慕课网APP