免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1627 | 回复: 4
打印 上一主题 下一主题

急急:DB2嵌入C,多线程(进程),并发,为何效率这么低? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-20 23:34 |只看该作者 |倒序浏览
我做了一个,嵌入C的程序,要求做一个简单的查询而已;

查询,用了corsor..

单独执行一次,只需300ms;

于是我做了一个多线程的程序,

用来实现并发(用了手动分配上下文),

结果,查询会随着 线程数的增长 而 执行时间会成线性增长。。
例如:
1: 300ms
2:  350ms
5:  800ms
10: 1200ms
100:5600ms
....

好像没有用到并发,像串行执行一样。。

我用多进程(不用设上下文了),做了一个,效果是一样的。。
--------------------------------------------------------
是锁么,但是我只有select ,不会有锁吧?

我的程序,所并发量,和时间要求很高,所以必须实现。。

头说sql serer 用一台普通pc就能达到上百个并发,
一台6000机器,不会如此差吧??

论坛徽章:
0
2 [报告]
发表于 2004-11-20 23:43 |只看该作者

急急:DB2嵌入C,多线程(进程),并发,为何效率这么低?

我每次都是重新连接数据库,执行完了,断开。。

一般的高访问量时时,搞并发,一般是怎么搞得?

有没有人搞过。。

论坛徽章:
0
3 [报告]
发表于 2004-11-21 00:38 |只看该作者

急急:DB2嵌入C,多线程(进程),并发,为何效率这么低?

The net result is that each SQL statement within a context is executed as an
atomic unit, even though other threads may also be trying to execute SQL
statements at the same time. This action ensures that internal data structures
are not altered by different threads at the same time. APIs also use the latch
& Copyright IBM Corp. 1993-2002 207
used by run-time services; therefore, APIs have the same restrictions as
run-time services routines within each context.

论坛徽章:
0
4 [报告]
发表于 2004-11-21 21:18 |只看该作者

急急:DB2嵌入C,多线程(进程),并发,为何效率这么低?

看看从数据配置里面优化一下,
同一时间并发的查询比较多的话需要对一些参数调整的!!!
特别地关注这几个:SORTHEAP,STMTHEAP,SHEAPTHRES_SHR,APPLHEAPSZ.....

论坛徽章:
0
5 [报告]
发表于 2004-11-21 21:24 |只看该作者

急急:DB2嵌入C,多线程(进程),并发,为何效率这么低?

程序里处理查询比较耗时的是,连接数据,尽量少的连接比较好,
库表的数据量,索引等方面考虑一下;
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP