社区
网络通信/分布式开发
帖子详情
MIDAS做的程序连接太慢(2分钟),请帮忙
tlc97
2001-03-07 08:40:00
bcb5.0做了个数据库程序,由于客户端机子种类太多,我做成三层结构,唯一的目的是免
去配置bde和装数据库客户端,但现在的问题是客户连接数据库时取一20000条记录的表竟然花去2分钟,这样的速度让人难以忍受,各位有什么办法提高速度?
数据库:sql server7.0/win98
程序服务器采用单线程模式,用tcp/ip连接(有win95,无法用dcom)
...全文
282
14
打赏
收藏
MIDAS做的程序连接太慢(2分钟),请帮忙
bcb5.0做了个数据库程序,由于客户端机子种类太多,我做成三层结构,唯一的目的是免 去配置bde和装数据库客户端,但现在的问题是客户连接数据库时取一20000条记录的表竟然花去2分钟,这样的速度让人难以忍受,各位有什么办法提高速度? 数据库:sql server7.0/win98 程序服务器采用单线程模式,用tcp/ip连接(有win95,无法用dcom)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
halfone
2001-03-09
打赏
举报
回复
你为什么不用POOLER呢?效果很明显的。
如果你是用DCOM要慢一点。但是用SOCKET可能好一点。
还有我测试过。如果你不用三层。通过直连也要1:30多哟。
tlc97
2001-03-09
打赏
举报
回复
我对delphi社区的热情很感动,虽然我提了个很不清楚的问题,我不是专职的程序员
所以请大家理解
我做的是一个客户资料管理系统,我在售后服务部,以前请大的软件公司做过,也许
他们对业务流程不清,项目很大,却比手工方式更复杂,所以公司决定自己做
由于整个业务流程我很熟悉,加上只有两人写程序,我们只是作了些基本的约定,没写
系统分析
老总给一月时间,包括完成资料的整理,另外两人负责录资料,其间还得负责正常工作
第一步只想把手工作业全转为网络办公,完善留到后面做
现只要做到以下几点:
1.新增客户管理(客户资料,交易情况等)
2.服务管理(发生问题,服务情况,客户意见等)
3.业务情况管理信息(提供各部门领导,市场情况,业务人员考评等)
4.客户资料提供合作公司共享
why_wf
2001-03-09
打赏
举报
回复
你的系统分析没有做好,建议你把想实现的功能讲出来,大家给你分析。
shadow007
2001-03-09
打赏
举报
回复
我建议把你要解决的问题摆出来,大家给你设计个好点的结构
tlc97
2001-03-09
打赏
举报
回复
很多文本资料要录入计算机,有些字段有规律已经计算进去,录入时只补空的字段
例如有order_id,name两字段,name为空,我每次连接时取回空的记录,顺序录入
数据以实际的物理资料排序,主要是考虑整理资料时少用查询
第一次的错误是用了ADOTable连接,实际证明他的速度很慢,还是bde最快
我的确做了个很糟的三层结构,以后会有经验吧,唯一的好处是本来好多破机
子现也可用了,换一台服务器所有的速度都会提高了
现经过全面测试,时间花费最大的是应用程序服务启动,不连接任何数据库,要23-25秒
连接数据库取20000条记录3秒,数据打包传到客户端11秒
如果用ADOTable在程序服务器,要花8-9秒才能返回数据
还有,一不小心用了single模式,还能改么?
TechnoFantasy
2001-03-08
打赏
举报
回复
TINA正确,如果象你这样的话不要用三层结构结构了。分批取记录,查询动作都在服务器
端执行,然后将执行的结果传到客户端。
TINA
2001-03-08
打赏
举报
回复
真是吐血,你这样一开始无端就取20000条纪录,就算不是3层,速度也会让人无法忍受。
首先你的做法就不对,我想不出什么程序非要取20000条纪录到客户端,如果真要浏览,可以采用分批取,如果是为了生成报表,拜托,先把数据在服务器端处理,然后把需要的数据返回到客户端。
你这样做,就算再好得结构,都要被你用的乱七八糟。
还是注意自己的方法吧,不要埋怨三层结构不好了。好好去学学三层结构,不要一点都不会,只会简单的连接远程数据就算会用,建议去买李维的书看看,好好去学学,什么才叫三层结构,怎样去优化。
TINA
2001-03-08
打赏
举报
回复
真想不出还有什么理由一定要马上检索20000条纪录出来,你倒是说出一个原因来啦,我是想不出来了,我想大家也很难想出一个合理的理由要这么做。
请问你非要这么做的目的是什么,一下子取这么多要干嘛用吗,我想现在不是讨论速度的问题了,而是应该讨论如superyiman所说的,结构不行,所以现在改为讨论你的结构
superyiman
2001-03-08
打赏
举报
回复
结构不行,你还得多看书!
superyiman
2001-03-08
打赏
举报
回复
结构不行,你还得看挺多书
w102272
2001-03-08
打赏
举报
回复
那你就说说为什么一定要取20000记录到客户端?不用三层体系也受不了这个折腾的。
你算算20000记录假设每记录算半K,那也要1M。
就算从网上邻居复制1M文件,也要一段时间的。
要免去配置bde和装数据库客户端,也可以使用ADO。
但是无论怎么样,都没法达到你要求的响应速度。你的设计一定要改的。
tlc97
2001-03-08
打赏
举报
回复
我在服务器端取20000条记录要1秒,实际上我的确要一次取这么多记录,也许有更好的方法,望你们能讲清,工作和研究是有区别的,等我找到好的算法,可能不用做了,我现在只做个框架
通过后我会再优化
我真的对三层结构不清楚,但不是赶时髦,我的客户端无法用bde访问数据库,如有其它办法
请告知一二
多谢各位的指教
eDRIVE
2001-03-08
打赏
举报
回复
你应该每次只Fetch一部分,哪里有一次干掉“20000”条的?
数据库查询20000条的时间+网络传输20000条的时间=???
神奇的肚肚
2001-03-07
打赏
举报
回复
我看只有从线程模式上考虑了,
你可以在数据库端做几个存储过程来调用,这样传输的数据会少一些
我观
MIDAS
我观
MIDAS
刚看到DFW的达人王兄的《对Borland 和 N-TIER的牢骚》,发现今天的BLOG有内容可写了:P 非常同意现在的系分、高手都很热衷于赶时髦,或曰“浮躁”。我也见过非常非常之多人是在为了三层而三层,把简单的...
对
MIDAS
的“过时论”的一点看法
我也见过非常非常之多人是在为了三层而三层,把简单的问题复杂化,把没必要
做
成三层的应用特地改成三层,结果得不偿失,事倍功半。 但对王兄后面的一些技术性分析,我觉得还是有值得商榷之处。...
转 我观
MIDAS
我也见过非常非常之多人是在为了三层而三层,把简单的问题复杂化,把没必要
做
成三层的应用特地改成三层,结果得不偿失,事倍功半。但对王兄后面的一些技术性分析,我觉得还是有值得商榷之处。首先,李维所说的:DCOM...
软件设计师复习资料
这吕蒙早就清楚关羽的为人,从此也不与关羽多加争辩,只是兢兢业业的
做
着自己的工作,将自己在测试过程中发现的所有小错误一一如实记录了下来。等到测试报告出来的时候,关羽傻了眼。由于他一时疏忽而犯下的一个小...
网络通信/分布式开发
1,593
社区成员
32,964
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章