| 方案-> | Мидас | Dom. | Com+ | Аста | RemoteObject | .СЕТЬ |
| 提供者 | Борланд | 微软 | 微软 | http://www.astatech.com | http://www.remobjects.com | 微软 |
| 核心技术 | Компонент | Компонент | Компонент | Asta 自己的 类同 midas , 但不依赖于 com | Remobjects 自己的 Webservice 技术 , 不依赖于 com | Веб -сервис |
| 开发工具 | Delphi7 | Delphi7 | Delphi7 | Delphi7 | Delphi7 | Visual Studio/Delphi8,9 |
| 与现有开发模式兼容程度 | ★ ★ ★ ★ ★ | ★ ★ ★ ★ | ★ ★ ★ ★ | ★★ (很不同的开发模式) | ★ ★ ★ ★ (支持 delphi 的 prvider/clientDataset) | ★ |
| 部署容易程度 | ★★★ | ★★ | ★ | ★ ★ ★ ★ (集成 Сервер 、不需要类似 Сервер сокетов 、 midas.dll 的东西) | ★ ★ ★ ★ ★ (集成 Сервер 、不需要类似 Сервер сокетов 、 midas.dll 的东西) | ★ |
| 可伸缩性 | ★ ★ ★ ★ | ★ ★ ★ ★ | ★ ★ ★ ★ ★ ★ | ★ ★ ★ ★ | ★ ★ ★ ★ ★ (支持自带服务器 或者使用 apache/iis 等容器) | ★ ★ ★ ★ |
| 性能 (效率) | ★★★ | ★ ★ ★ ★ | ★ ★ ★ ★ | ★ ★ ★ ★ ★ (二进制传输 , 支持压缩) | ★ ★ ★ ★ (二进制传输 , 支持压缩) | ★★ (文本的 xml 消息传输) |
| 消息传输格式 | 二进制 com 消息 | 二进制 com 消息 | 二进制 com 消息 | 二进制流 | 二进制流或文本的 XML SOAP 消息 | XML SOAP 消息 |
| 源程序 | 不全 | 无 | 无 | 有 | 有 | 无 |
| 购买价格 | $ 0 | $ 0 | $ 0 | 299 $ 7500 | 299 евро | $ 0 |
| 与 .NET 集成 | 不可以 | 可以 | 可以 | 不可以 | 可以 (直接基于 Webservice 并提供 .net 客户端开发包 , 并可以使用二进制消息格式) | 可以 |
| 中间件跨平台 | 有可能 | 不可能 | 不可能 | 有可能 | 可以 (支持 kylix 开发 支持 apache 做容器) | 可能吧 |
| 总体评价 | ★★★ | ★★ | ★ | ★ ★ ★ ★ | ★ ★ ★ ★ ★ | ★★ |
速度与效率测试:
| 测试项目 * | 计算 1000 次 1+1 = 2 * | 传输 10000 条 100 字节记录 * | ||
| 所花时间 (MS) * | 传输字节数 * | 所花时间 | 传输字节数 | |
| Midas (подключение к сокетам) | 26 047 | 366 000 | 2359 | 1047 000 |
| Midas (Domce Connection) | 812 | 933 | 2 047 | 1047 000 |
| Ado 直连数据库 (两层) | 297 | 1046 000 | ||
| Аста 3 压缩 | 1578 | 1100 000 | ||
| RemoteObject2 http 二进制 压缩 | 8 641 | 791 000 | 2,515 | 1048 000 |
| RemoteObject2 http 二进制 不压缩 | 7 765 | 783 000 | 2391 | 1049 000 |
| RemoteObject2 Http Soap | 11 687 | 1935 000 | 3110 | 1052 000 |
| RemoteObject2 TCP 二进制 压缩 | 8 406 | 512 000 | 2422 | 1049 000 |
| RemoteObject2 TCP 二进制 不压缩 | 6547 | 504 000 | 2484 | 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 | ||
结果分析 :
* 以上测试涉及文件都在附件中的测试包中;都是连接的本机 (Localhost) ;空白的是没有做测试的
* 传输字节数测量都是用的 Commview 4.1 IP 包检测捕获软件 , 监测 «Loopback» (127.0.0.1) 设备; Commview 软件安装见测试包的 Инструменты 目录;字节数包括实际传输的数据和 IP 握手信息等 , 如果大于 10K , 则只保留到千位 可能每次测量会有一点点区别。 可能每次测量会有一点点区别。 可能每次测量会有一点点区别。
* 测试所花时间时 Commview 停止捕获 ip 包 , 测试 3 次左右 , 取中间值
* 测试计算 1000 次 1+1 = 2:
中间都是实现类似以下方法 :
Функция сумма (A, B: целое число): целое число;
начинать
Результат: = A + B;
конец;
其中 RemoteObject 2、3 的测试程序直接用的它自带的 Megademo 例子 , 执行文件分别见测试包中的 «1+1 = 2/Remobjects Sdk 2” 和 «1+1 = 2/Remobjects SDK 3” 目录, 后者是试用版 , delphi (不知道还有没有其它限制) 测试时都是设置的使用 测试时都是设置的使用 indy ; midas 和 dcom 的测试是自己写的程序 , 源程序和执行文件测试包中的 «Мидас» 目录。