服务器:软环境:windows2003+sql2000+iis+花生壳
       硬环境:双核3.0+4G内存戴尔台式机做服务器公司软件:vb.net2008+webserivces 编写的winform程序,自已开发
公司架构:总部深圳,在其它城市有三个分部,同时联服务器的电脑大概有30台左右
         总部直联数据库取数,分部用webserivces连接运行有1年多,读取数据都正常,最近几天出现客户端访问经常会卡住的情况,不是每下都卡住!
公司意见很大!检查网络复制文件,速度都正常,应该可以排除网络慢的原因!各位大虾帮帮忙都急死了!!!

解决方案 »

  1.   

    是不是日志文件很大?清理一下日志!
    数据文件是否过大,是否超出范围?
    exec sp_spacesuser
    使用dbcc database(),检查一下数据库是否有问题?
      

  2.   

    先别急分析一下
    1 总部卡还是分部卡,还是都卡?如果总部不卡分部卡那就要怀疑分部连总部的网络因素了
    2 如果都卡的话,那也要怀疑一下总部的网络因素,可以先ping几千下分析一下 ping hostname -n 1000>c:\result.txt
    3 如果ping下来都正常,那可以怀疑一下服务器或者sqlserver的性能或者其他因素了
      

  3.   


    没有保存日志!
    数据库868M,主表数据不到100万条
    dbcc?常用的命令有那些啊
      

  4.   

    问题到现还是没解决!
    补充一点
    服务器上iis同时支持asp.net1.1和asp.net2.0
    asp.net1.1是老系统用的,偶而上去查一下东西
    今天测了一下,用webservices方式登录局域网服务器读取数据,速度正常,在服务器本机上读取数据也正常,但在局域网用直联数据库的方式,就会出现卡机情况,速度明显慢下来!
    个人觉得应该不是网络问题,是否因为IIS同时支持asp.net1.1和asp.net2.0影响速度,用直联方式读取局域网数据库需要注意些什么或是那些地方会影响到程序的执行速度!!!!求高手帮忙诊断一下!!!!
      

  5.   

    服务器还提供web服务?尽量只做数据服务器用。
      

  6.   


    不是纯WEB服务,只是用于webservices,这样外地可以读取服务器数据
      

  7.   

    自已新建了一个数据库做测试!空数据库问题依旧,
    如果没有动DB配置,不是它的问题。找找是否有改动OS网络相关配置,比如是文件共享优化还是应用程序优化等。
      

  8.   

    数据量有多大,估计是数据量太大,通常对一个表,第一次读数据时会有一个从硬盘调入数据到内存的过程
    对一个几十万记录的表,第一次查询可能要花几十秒或更长,但第二次查询就很快。
    如果是数据量太大,建议进行优化,除了楼上各大侠介绍的方法,对操作频繁且记录多的表,可备份数据库,对数据进行清空,再插入操作,可减少表因长时间操作产生的硬盘碎块。
    方法为建一结构一原表相同的表,用insert select将原表数据插入到新建的表,删除原表,将新表名改为原表名,如有外键或触发器,再在此新建的表中创建。
      

  9.   

    会不会跟Webservices有关?我也遇到这样的问题,像是锁表一样,有时候自己就好了,有时候得重启SQL Server服务。
      

  10.   

    感谢各位兄弟的意见!!问题已经解决!是SQL连接字符串的原因
    原先写法:server=xxx;Database=studb;Uid=sa;Pwd=sa;pooling=false;Connect Timeout=120
    现在写法:Data Source=xxx;Database=studb;Uid=sa;Pwd=sa;Connect Timeout=120速度明显改善!那位兄弟告诉我这两种写法有何区别?
    更今人不解的是,以前都没问题,最近才变慢!
      

  11.   

    之前因为pooling=false,连接池为false,不启用!
    连接池是数据缓冲的作用!