各位:
  我通过INDY控件接收网络服务器传来的数据,大概每秒1000多条,每条数据大概160个字符,接收后入库.我在编写程序时,是接收一条数据就入库,然后接收下一条,这样将会花费很多时间,大概每分钟才1000条左右,这是不行的,请问我该如何设计程序才能保证每秒接收1000条数据,并且入库,请大家给我提出思路!!!
谢谢大家!!

解决方案 »

  1.   

    服务器以100条或者更多为一个单位,向客户端直接传输一个数据集(比如TDataSet)
    ,客户端直接入库,可能比一条一条的处理要快一些。
      

  2.   

    access数据库
    是每秒最大吞吐量
      

  3.   

    至少2个线程,socket接收一个,收到数据后,缓存到内部队列里。
    另一个线程,读取内部队列,然后入库。
      

  4.   

    做缓存吧,有内存数据库可以使用,叫SQLMem什么的,首先就把这些数据写内存,之后大概1分钟用条纯种来更新....
      

  5.   

    我本做过一个从SQL SERVER取数据插入ORACLE的项目,每秒10000笔记录!
      

  6.   

    access数据库不能支持这么高的速率的,换别的数据库吧
      

  7.   

    服务器以100条或者更多为一个单位,向客户端直接传输一个数据集(比如TDataSet)
    ,客户端直接入库,可能比一条一条的处理要快一些。
    支持,不过我觉的再加上多线程的话会更快些
      

  8.   

    一硬件 sun fire v890 8cpu +32G内存 +1TB磁盘
    数据库 oracle 10G 写存储过程
    编写应用程序服务器,现接受数据2000条在提交一次