我有一个抓取招聘信息的程序,非常频繁的向数据库写入数据,造成占用内存较大,下载10个小时大约占用1.5G内存
大家遇到这种情况是如何解决的呢?

解决方案 »

  1.   

    频繁写入数据库的话,肯定会造成内存或者cpu过高,你可以分成块来操作,及时的释放数据库操作的资源
      

  2.   

    可以用datareader对象,比起dataset datatable它耗内存是最少,另外升级硬件,或进行分布式处理
      

  3.   

    内存泄漏?
    单纯地抓取网页存入数据库来来去去就只占几十K的内存,再考虑GC回收的速度也不至于点到G的级别上去吧?
      

  4.   

    把查询结果时用事务,索引,视图 能节省时间,耗的内存也少。
    你试试!!!!
    事务,索引,视图 是sql中的知识,我也刚学。可以去看看
      

  5.   

    他好像说的是写进去占资源吧,什么datareader都来了哦
      

  6.   

    手工设置内存选项 
      手工设置 SQL Server 内存选项有两种主要方法: 
      
      第一种方法,设置 min server memory 和 max server memory 为同一数值。该数值与分配给 SQL Server 的固定内存量相对应。 
      
      
      第二种方法,把 min server memory 和 max server memory 数量设置到一个范围段内。这种方法在系统或数据库管理员希望配置 SQL Server 实例,使其适应在同一台计算机上运行的其它应用程序的内存需求时很有用。 
      min server memory 保证了 SQL Server 实例使用的最小内存量。SQL Server 启动时不立即分配 min server memory 中所指定的内存量。但是,当内存使用由于客户端负荷而达到该值后,SQL Server 将无法从已分配的缓冲池中释放内存,除非减少 min server memory 值。 
      

  7.   

    很频繁的向SQL Server中写数据,sql占用内存猛增,是怎么回事?
      

  8.   

    最大的开销一般是用于数据缓存,如果内存足够,它会把用过的数据和觉得你会用到的数据统统扔到内存中,直到内存不足的时候,才把命中率低的数据给清掉。所以一般我们在看statistics   io的时候,看到的physics   read都是0。