Delphi多层开发方案比较

Delphi 时间的比较 时间比较函数 CompareDateTime() //比较两个时间是否相同 CompareDate() //比较两个时间的日期是否相同 CompareTime() //比较两个时间的时分秒是否相同 SameDateTime() //比较两个时间是否相同 SameDate() //比较两个时间的日期... 阅读详情

Delphi多层开发方案比较


 

方案->

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时取得的,其它的测试都没有专门设置该属性


<!--[if !vml]--><!--[endif]-->*
以上测试涉及文件都在附件中的测试包中;都是连接的本机(localhost);空白的是没有做测试的

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

<!--[if !vml]--><!--[endif]-->* 测试所花时间时CommView停止捕获IP包,测试3次左右,取中间值

<!--[if !vml]--><!--[endif]-->* 测试计算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; <!--[if !vml]-->Midas和DCOM的测试是自己写的程序,源程序和执行文件测试包中的“midas”目录。

 
UniDac.5.0.2〖最新版本支持D7~XE5〗 delphi第三方插件UniDac是连接数据库的组件,替换ADO所有组件 UniDAC 1.0Universal Data Access Components (UniDAC) is a powerful library of nonvisual cross-database data access components for Delphi, Delphi for .NET, and C++Builder. We have combined the experience of long-term successful development into one product, which provides unified access to the popular database servers like Oracle, Microsoft SQL Server, MySQL, InterBase, and Firebird. 立即下载

相关推荐

Delphi用ADO操作数据库完整示例

Delphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.docDelphi用ADO操作数据库完整示例.doc

delphi源代码三层框架【框架简介】

delphi 三层 中间件 源码 框架

173713873 4460

2000_Delphi最新三层源码_delphi三层架构_DELPHI三层_三层_源码

Delphi 版的三层架构 分为:数据连接层、DAO层、Modal层、Service层

uniDAC和ado params的区别 .

转载http://www.pfeng.org/archives/58/   一直以来都是用UniDAC作为数据库查询组件,而一般的写法都是这样:   01 UniQuery_sqlite.close; 02       UniQuery_sqlite.SQL.Clear; 03       U

2353939的专栏 1009

LMX2595实战:手把手教你配置JESD204B时钟与SYSREF(含相位同步避坑指南)

本文详细介绍了LMX2595在JESD204B时钟系统中的配置与优化方法,包括时钟系统架构设计、相位同步配置、SYSREF生成技巧以及PCB布局规范。通过实战案例和避坑指南,帮助工程师充分发挥LMX2595的超低相位噪声和抖动性能,确保高速数据转换器系统的稳定性和同步精度。

weixin_29206669的博客 478

复信号的调制与解调(基带)

Digital modulation methods can be considered as digital-to-analog conversion and the corresponding demodulation or detection as analog-to-digital conversion. 数字调制可以看成是数字到模拟的变换,同样,数字解调也可以看作是模拟向数字的转换。

JonTargaryen的博客 1万+

Delphi 12中的 FireDAC、UniDAC、ADO执行效率分析

另外,ADO 不能用TADOQuery.next 历遍加载数据到视图,就算DisabledControls 也不行,测试有时有效很快加载,有时龟速,没法用。AnyConn-FireDAC, 线程查询加载4187604条记录 到VirtualTree用时:5.297(秒)AnyConn-UniDAC, 线程查询加载4187604条记录 到VirtualTree用时:5.109(秒)AnyConn-ADO, 线程查询加载4187604条记录 到VirtualTree用时:13.75(秒)

SQLDefine的博客 1734

企业知识库AI助手的权限管理架构:如何实现细粒度控制?

在展开架构设计前,我们需要先明确“细粒度权限”的核心定义,并理解它对AI助手的特殊意义。权限管理的“粒度”,本质是权限控制的精准程度。维度粗粒度权限细粒度权限资源范围entire document(整个文档)field/paragraph(字段/段落)操作类型read/write(读/写)generate_summary/download/export(生成摘要/下载/导出)上下文约束无(静态权限)time/ip/device(时间/IP/设备)适用场景简单系统(如内部wiki)

大数据洞察的博客 1039

[博摘]Delphi多层开发方案比较

Delphi多层开发方案比较摘自 qdyoung 的 Blog   方案-> Midas DCOM

虹上飞的专栏 987

手把手教你学Simulink--基于多能源系统协同控制的复杂场景实例:氢燃料电池+锂电池混合动力电动汽车能量管理仿真

本文介绍了基于Simulink的氢燃料电池与锂电池混合动力电动汽车能量管理系统的建模与仿真方法。系统包含驾驶循环输入、燃料电池子系统、锂电池子系统、能量管理、电机驱动等模块,通过协同控制优化能源分配。详细说明了从模型创建到各子系统设置的7个步骤,并提供了MATLAB代码示例。该仿真可评估不同工况下的系统响应速度、能量利用效率和电池寿命等性能指标,为混合动力汽车的能量管理策略设计和优化提供参考。

MHD0815的博客 238

Unity之如何实现TTS文本转语音(真人发音)

微软Azure TTS 文本转语音 服务 将文本转换为逼真的语音的语音服务功能 支持个各国语言,各种中文各种方言,支持不同音色男音女音 支持离线和在线版本

TxNet 5479

Delphi多层开发方案比较【转载】

  方案->MidasDCOMCOM+ASTARemoteObject.NET提供者Borland微软微软http://www.astatech.comhttp://www.remobjects.com微软

技术天地 965

无人机视角下基于YOLOv5/v8/v10的车辆检测系统:从算法原理到UI界面实战

随着无人机技术的普及和智慧城市的发展,无人机视角下的车辆检测在交通监控、战场侦察、灾害救援等领域展现出巨大的应用价值。然而,无人机航拍图像存在目标尺度小、视角多变、背景复杂等挑战。本文深入探讨了如何利用YOLOv5、YOLOv8、YOLOv10三个代表性目标检测算法,构建一套完整的无人机车辆检测系统。文章不仅详细解析了各版本YOLO的核心技术演进,还提供了从数据集准备、模型训练、性能评估到基于PyQt5/PySide6的图形界面开发的完整代码实现。通过本文,读者将能够掌握构建无人机实时车辆检测系统的全流程技

YOLO 172

Delphi多层开发方案比较(转载)

  方案-> Midas DCOM COM+

ingener的专栏 943

025、空间降噪与时域降噪:噪声抑制与细节保留的平衡艺术

《降噪技术的平衡艺术:空间与时域降噪的协同优化》 本文深入探讨了图像处理中空间降噪与时域降噪的技术原理与工程实践。空间降噪通过像素级处理提升单帧质量,而时域降噪则利用帧间信息增强稳定性。文章揭示了两种方法在实际应用中的矛盾点:过度降噪会导致细节损失,影响后续算法性能。作者结合车载环视系统等实战案例,详细分享了参数调优经验,包括运动自适应策略、边缘保持技巧和嵌入式平台优化方案。特别强调降噪的最终目标应服务于下游算法需求,而非单纯追求图像美观。文章为工程人员提供了从理论到实践的完整指导,展现了降噪技术在效果与性

sundong_81的博客 186

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

转: Delphi多层开发方案比较

转自 http://blog.youkuaiyun.com/lee576/article/details/2010856 案-> Midas DCOM COM+ ASTA RemoteObject .NET 提供者 Borland 微软 微软 http://www.as...

weixin_30265171的博客 95

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

使用delphi 开发多层应用(三)Delphi常用多层框架介绍

目前在delphi 开发多层应用的框架基本上集中在以下几种,每种开发框架都有自己的优缺点,没有最好的,大家可以根据 自己的实际需求选择相应框架,我把我本人在使用几种框架的体会与大家分享一下。如有不对之处,可以拍砖。      1. DELPHI 自身提供的DataSnap       从delphi 3 开始,delphi 自身就开始支持多层开发,后期的版本逐步加强三层开发功能,

chinajobs的专栏 958

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Delphi常用多层框架介绍(转)

转自:http://www.cnblogs.com/xalion/archive/2012/01/18/2325418.html 目前在delphi 开发多层应用的框架基本上集中在以下几种,每种开发框架都有自己的优缺点,没有最好的,大家可以根据 自己的实际需求选择相应框架,我把我本人在使用几种框架的体会与大家分享一下。如有不对之处,可以拍砖。 1. DELPHI 自身提供...

518
上一篇: 远程调用技术代码追踪(webservice)
下一篇: 实现Installshield对Php+mysql+apache做的程序在WINDOWS下打包
火龙岛主
博客等级 码龄25年 256粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值