分享
 
 
 

Delphi多层开发方案比较

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

方案->

Midas

DCOM

COM+

ASTA

RemoteObject

.NET

提供者

Borland

微软

微软

http://www.astatech.com

http://www.remobjects.com

微软

核心技术

COM

COM

COM

ASTA自己的,类同Midas,

但不依赖于COM

RemObjects自己的WebService技术,

不依赖于COM

WebService

开发工具

Delphi7

Delphi7

Delphi7

Delphi7

Delphi7

Visual Studio/Delphi8,9

与现有开发模式兼容程度

★★★★★

★★★★

★★★★

★★

(很不同的开发模式)

★★★★

(支持Delphi的Prvider/ClientDataSet)

部署容易程度

★★★

★★

★★★★

(集成server、不需要类似socket server、midas.dll的东西)

★★★★★

(集成server、不需要类似socket server、midas.dll的东西)

可伸缩性

★★★★

★★★★

★★★★★★

★★★★

★★★★★

(支持自带服务器,或者使用Apache/IIS等容器)

★★★★

性能(效率)

★★★

★★★★

★★★★

★★★★★

(二进制传输,支持压缩)

★★★★

(二进制传输,支持压缩)

★★

(文本的XML消息传输)

消息传输格式

二进制COM消息

二进制COM消息

二进制COM消息

二进制流

二进制流或文本的XML SOAP消息

XML SOAP消息

源程序

不全

购买价格

$0

$0

$0

$299 - $7,500

EUR 299

$0

与.NET集成

不可以

可以

可以

不可以

可以

(直接基于webservice并提供.NET客户端开发包,并可以使用二进制消息格式)

可以

中间件跨平台

有可能

不可能

不可能

有可能

可以

(支持Kylix开发,支持Apache做容器)

可能吧

总体评价

★★★

★★

★★★★

★★★★★

★★

速度与效率测试:

测试项目 *

计算1000次1+1=2 *

传输10000条100字节记录 *

所花时间(ms) *

传输字节数 *

所花时间

传输字节数

Midas (Socket Connection)

26,047

366,000

2,359

1047,000

Midas (DCOM Connection)

812

933

2,047

1047,000

ADO直连数据库 (两层)

297

1046,000

Asta 3 压缩

1,578

1100,000

RemoteObject2 HTTP 二进制 压缩

8,641

791,000

2,515

1048,000

RemoteObject2 HTTP 二进制 不压缩

7,765

783,000

2,391

1049,000

RemoteObject2 HTTP SOAP

11,687

1935,000

3,110

1052,000

RemoteObject2 TCP 二进制 压缩

8,406

512,000

2,422

1049,000

RemoteObject2 TCP 二进制 不压缩

6,547

504,000

2,484

1563,000

RemoteObject2 TCP SOAP

11,281

1673,000

RemoteObject3 HTTP 二进制 压缩

11,625

504,000

RemoteObject3 HTTP 二进制 不压缩

10,593

501,000

RemoteObject3 HTTP SOAP

15,640

1108,000

RemoteObject3 TCP 二进制 压缩

11,172

512,000

RemoteObject3 TCP 二进制 不压缩

10,203

504,000

RemoteObject3 TCP SOAP

15,547

1712,000

结果分析:

两层的效率当然是最高的;这样选择三层方案时就可以在伸缩性和性能之间做权衡,选择最优方案

DCOM针对本机运算可能做过优化,太快了,传输的字节数也太少了

Socket Connection的效率实在不敢恭维,比RemoteObject使用SOAP传输还低

RemoteObject使用二进制传输的效率大概是使用SOAP的2-3倍

RemoteObject使用二进制传输基本能达到甚至超过Socket Server的性能

RemoteObject的压缩好像没什么用

Asta性能比RemoteObject和Midas都高,但这个结果是设置了ADOQuery的CacheSize=1000时取得的,其它的测试都没有专门设置该属性

* 以上测试涉及文件都在附件中的测试包中;都是连接的本机(localhost);空白的是没有做测试的

* 传输字节数测量都是用的CommView 4.1 IP包检测捕获软件,监测“Loopback”(127.0.0.1)设备;CommView软件安装见测试包的tools目录;字节数包括实际传输的数据和IP握手信息等,如果大于10K,则只保留到千位,可能每次测量会有一点点区别。

* 测试所花时间时CommView停止捕获IP包,测试3次左右,取中间值

* 测试计算1000次1+1=2:

中间都是实现类似以下方法:

function Sum(a, b: Integer): Integer;

begin

Result := a + b;

end;

其中RemoteObject 2、3的测试程序直接用的它自带的MegaDemo例子,执行文件分别见测试包中的“1+1=2\RemObjects SDK 2”和“1+1=2\RemObjects SDK 3”目录,后者是试用版,运行前需要先允许Delphi(不知道还有没有其它限制),测试时都是设置的使用Indy;Midas和DCOM的测试是自己写的程序,源程序和执行文件测试包中的“midas”目录。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有