ASP.NET(C#)和Sql2005组合性能问题研究

我现在遇到两个性能问题,请大家一起研究!~

第一个问题:
 我们网站的信息系统,每天新增100W条用户数据,不知道如果解决才能查询更新
更快,更合理
 现有做法
 我们现在用Sql 2005已经按用户做过表分区了,每个表分区中每天有5W新增数
据.并且分区也不能的磁盘中,I/O也不是题,但就是因为数据量很大,如果我们只保存用
户3天内的聊天交友信息,数据量一定很稳定,但现在我们要保存数据1个月,也就是表中
有3000W条数据信息.查询很慢.
 表结构如下:

CREATE TABLE [dbo].[tb_message_new](
 
[ID] [int] IDENTITY(1,1NOT NULL,
 
[Userid] [int] NOT NULL,
 
[Userid_from] [int] NULL DEFAULT ((0)),
 
[UserName_from] [varchar](30)  DEFAULT (''),
 
[Msgtype] [int] NULL DEFAULT ((0)),
 
[Content] [varchar](500DEFAULT (''),
 
[Msgurl] [varchar](200)  DEFAULT (''),
 
[Status] [int] NULL DEFAULT ((0)),
 
[Submit_time] [datetime] NULL DEFAULT (getdate()),  CONSTRAINT
[PK_tb_message_new] PRIMARY KEY NONCLUSTERED (
 
[ID] ASC
)
WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [UserScheme]([Userid])

 ID是主键
 并且对userid,userid_frim,submit_time 做了索引


 第二个问题:
 当我闪公告或推荐一个条新闻数据,同时会有1W个用户并发查看(并发用户),我们的统计是每次+1,现在数
据库更新时有问题了,排队更新,速度太慢.
 我们现在想在程序中做统计,不进行数据库统计,每次在程序中+1,加到100后,
再更新一次数据库,程序这边数据清0.
但这样统计,数据有点不准确.
    以上是我们现在的方法,如果有更好的,还请各位大师指教..

posted @ 2006-10-16 13:08  wenanry  阅读(2274)  评论(11编辑  收藏  举报