ASTA的一个看法

几年前我用MTS的时候就听说ASTA了,后来我们公司也搞与MIDAS和ASTA类似的中间件TM+BSO,现在MTS升华到COM+,我们的TM由于稳定性和效率不够也夭折了,最近一个朋友在一家大型物流软件公司做开发,说还在使用ASTA,去ASTA网站看看,还活得很健壮,支持delphi2006、SOAP,还搞什么ASTA Wireless。

朋友说他们用ASTA最主要是节省数据库连接数量,减少数据库连接购买费用,再有就是要向客户吹嘘3-Tier,根本没有写什么Business Object,执行速度也是很慢。

我下了ASTA3版本看了看,可能他比MIDAS招人喜欢在这几个地方:

1、资料打包速度比MIDAS快,都用ADO引擎,22万笔资料,TDataSetProvider打包要980秒,ASTA只要377秒;(实际上有更绝的,直接把ADODataSet存到_Stream送到客户端,只要14秒)

2、中间层服务器内置了资料元件(Data Object),客户端传入SQL语句就可查询出资料。这在很多刚搞3-tier的人看来认为很方便,因为他们按Borland的范例,客户端有多少DataSet,服务器就会有多少DataSet和相同数量的DataSetProvider,常常光处理资料就要在服务器大动干戈,还不要谈Business Function。

3、纯Delphi源码的服务器,可以自己增加些必须的画面,比如参数设定、日志管理、运行状况监控等等,这在COM+或别的中间件是无能为力的。

有几个疑问的地方:

1、ASTA也说Thin Client,客户端不装数据库引擎就是瘦客户端?瘦了多少,九牛一毛。那些Form无论包在bpl还是dll里都是要安装或下载到客户端去的。(除非都动态生成Form,嗯,难度大...)

2、数据库连接真能省下来?我们知道一个TADOConnection就是一个连接,一个Session,服务器必须为每个并发的使用创建一个TADOConnection,如何省?除非ASTA在服务器限制了TADOConnection的创建数量,超过就等待。(像SQLServer的连接授权是认Session还是Workstation?)因此,要省连接除非减少并发数量,就是你的服务器Data Object和Entity Object规划得比较好,在最迟的时间以最短的时间访问数据库,因为服务器元件是无状态的,可以用完就给别人用,而C/S模式下一个客户端的Session是要一直连接的。(补记:SQLServe有两种授权模式,对设备和对CPU,对设备就是Workstation,一台PC无论开几个TADOConnection连接都只算一个,对CPU指服务器的CPU,workstation就是可以无限多。因此,有了中间层,就只需要购买中间层服务器的授权,可以大大节省授权费用。)

3、速度问题,3-tier当然不能一次把很大资料送到客户端去,送去干嘛?运算?先在服务器的Entity Object运算。浏览显示?学网页分页分批显示咯。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值