只是一个简单的测试, 用了三种方法来做10万条记录的插入.  不过我没有测试拼10万条sql插入的效率.
应用在:dell inspiron 640M本本上跑的. 1.60双核CPU, 2G内存.  服务器是HP360, 8CPU, 4G内存. SQL2000数据库.
仅供参考.

一.每次都调用ctx的InsertOnSubmit方法把对象放入:
2008-7-18 14:29:55 开始生成100000个对象. 并直接放入ctx; 用时4秒
2008-7-18 14:29:59  开始SubmitChanges;                   用时3分26秒
2008-7-18 14:33:25  完成.

运行时内存占用了4M左右.

二. 先生成一个list, 最后把list调用ctx的InsertAllOnSubmit方法把全部对象放入:
2008-7-18 18:45:06 开始生成100000个对象. 并放入list 用时1秒
2008-7-18 18:45:07 开始把list全部对象加入ctx.  用时2秒
2008-7-18 18:45:09 开始执行submitChange  用时3分33秒. 应该是数据库的原因导致的慢了7秒. 个人认为不重要.
2008-7-18 18:48:42 完成.

运行时内存占用了4M左右.

三.每生成一个记录都调用ctx的insertOnSubmit, 并且都立即执行submitChanges. 每5000个报一次.
2008-7-18 19:41:28
2008-7-18 19:41:29 0
2008-7-18 19:42:08 5000    此5000条用 39 秒
2008-7-18 19:43:39 10000   此5000条用 91 秒 多了52
2008-7-18 19:46:02 15000   此5000条用143 秒 多了52
2008-7-18 19:49:17 20000   此5000条用195 秒 多了52
2008-7-18 19:53:25 25000   此5000条用248 秒 多了53
2008-7-18 19:58:29 30000   此5000条用304 秒 多了56
2008-7-18 20:04:28 35000   此5000条用359 秒 多了55
2008-7-18 20:11:22 40000   此5000条用414 秒 多了55
2008-7-18 20:19:14 45000   此5000条用472 秒 多了58
2008-7-18 20:28:05 50000   此5000条用531 秒 多了59
2008-7-18 20:37:50 55000   此5000条用585 秒 多了54
2008-7-18 20:48:35 60000   此5000条用645 秒 多了60
2008-7-18 21:00:38 65000   此5000条用723 秒 多了78
2008-7-18 21:13:01 70000   此5000条用743 秒 多了20
2008-7-18 21:26:01 75000   此5000条用780 秒 多了37
.... 等不及了, 关了程序了.                
运行时内存占用了4M左右.

越来越慢.

posted @ 2008-07-18 21:54 HAL9000 阅读(1433) | 评论 (27)编辑
     摘要: 多年了,没有什么技术再能让我激动得无法控制住自己,包括WPF的超炫界面功能,我也只是小小地喜悦了一下,但毕竟知道界面设计更多还是美工创意的功夫,见过很多品味不够的开发人员,把自己程序界面搞得花里胡骚,简直得像不小心坐在调色板上的大熊的屁股,只能让人笑话。所以WPF的UI能力似乎离自己还有距离。
  但是,Linq,却真得把我雷到了。在我重新坐下来写这段话之前,我是激动得在屋里转了几圈的,嘴里至少把MS骂了十来句“WC!”,这骂不是怀了恨意的骂,而是怀了敬意的骂,是没办法控制自己兴奋和激动的心情的骂,就像是《朱罗纪公园》里的马尔康姆教授第一眼看到人工DNA造出来的活恐龙时,说的那句话:“这帮狗娘养的真的做了!”
  阅读全文
posted @ 2008-07-17 23:04 HAL9000 阅读(2510) | 评论 (70)编辑

在MSDN上闲逛, 无意中看到一个这样的东西: 屏幕逻辑集成.

 SLI(屏幕逻辑集成,Screen Logic Integration)用于将古老的UNIX绿色终端字符界面的程序包装成为一个web services, 以便在SOA的架构里重用这些古老的业务逻辑. 

比如, 在我们公司中, 业务系统是基于UNIX的终端程序,  一些业务逻辑是在界面上的一些输入框里输入参数, 一些资料, 或是计算结果被显示在屏幕上的一个地方, 这些业务逻辑通过NEON Systems ServiceBuilder可以以web services的方式发布. 其过程如下:

    1.在VS中新建一个NEON Systems ServiceBuilder的项目以建立一个SLI方案.(当然, 前提是你得先安装了这个东西).
    2.向导提供一个录制器, 用来记录你的telnet程序的输入和输出, 记录下屏幕上的所有的输入了信息的地方和输出了信息的地方.
    3.你在向导的录制结果中, 以直观的方式指定哪些是输入参数, 那些区域是输出结果. 还有数据类型等.
    4.向导生成有关的对象模型, 生成webservice.
  
    实际运行时呢? 我猜是这样的:
    1. web services被调用, 参数被传入. webservices程序调用neon的程序.
    2. NEON偷偷以telnet协议连入unix主机, 按录下的按键序列调用unix主机上的程序.
    3. 参数在指定的地方由程序摸拟输入.
    4. 主机程序回应结果, 这些结果本来是要显示在屏幕上的, 现在被NEON得到, 根据指定的位置信息和这些信息对应, 分辩出哪些是什么字段, 返回给web services程序.
    5. web services向调用者回应结果对象.

    这个东西真得有用. :D

MSDN上的文章在这里:
http://www.microsoft.com/china/MSDN/library/KnowledgeBase/kb_0409.aspx

posted @ 2005-11-14 11:30 HAL9000 阅读(718) | 评论 (1)编辑