纯粹Delphi自身的多层框架的实现,几乎都只是达到了玩具的程度,也只能做做Demo给人看,真的到了实战场合,就会暴露出完全不可行:
1)COM+虽然好,却部署困难,难于管理,无法穿透防火墙,诚然有scktsrvr.exe或httpsrvr.dll这样的转接桥程序,却会因为多出一个数据转接口模块从而品质大为下降;
2)exe形态的DCOM的Midas Server部署起来好一些,但是其稳定性、性能却比较低下,没有object pooling,是instance per connection的方式,几乎无法应对大量客户端的场合,而且往往很难直接使用,大多是配合scktsrvr.exe,用socket的方式连接;
3)Delphi的Web Service只能说是“权宜之计”,是稍微可用一点的Delphi的互联网解决方案。不过,相比于其他的支持Web Service的开发平台,Delphi的Web Service毫无突出之处:开发方便性和性能,都不如Asp.Net;跨平台、绿色性、成熟性,不如Java及其一大堆基于Java的Application Server。Delphi是个高效率的语言,可是在其自身的Web Service实现上,并没有作很好的优化。
4)IntraWeb也同样是一套玩具级别的开发平台,高不成、低不就,纵然发挥到了极致,不过是和asp.net差不太多。
5)直接用ActiveForm开发Web系统,这种方法不加变通的来用的话,几乎完全不可行,如果你的系统是一大堆每个1、2M的OCX文件,这将是一件多可怕的事情:每个模块都要注册,同时每个模块更新后,打开页面要等很长时间安装这个模块。
独头蒜的Delphi就是这么一个东西:貌似有很多路可以走,但实际上每条路都走不通。不过熟悉Delphi的人都明白,Delphi的好处并非是它提供了现成的好东西,而是用它能做出好东西来。Delphi的很多思想和模式是好的,只是实现的并不很到位,比如说Midas。实现的不到位,那我们自己来实现好了。
CBX RIA框架就是这么个东西,其实是发扬了Delphi的特色,同时又把欠缺的东西补齐了:
1、采纳一个强有力的Web Server(例如Apache或IIS)直接当作应用服务器
2、发挥优势,客户端用VCL,用bpl的机制给客户端减肥
3、中间层无状态,Pooling
4、直接采用http协议通讯,天然穿透防火墙
5、热部署程序模块,解决部署的麻烦
6、用一个小exe初始化程序,来初始化浏览器,绕开浏览器安全设定的麻烦。
CBX RIA框架几乎是国产多Delphi层框架中最好的一个,同时体现SmartClient和RIA思想。
CBX RIA Demo(需要客户端初始化): http://117.21.247.37/cbx/AppSvr.dll/Splash.ao
有关CBX RIA的评论:http://www.firebird.net.cn/forum_view.asp?forum_id=2&view_id=2251
刚创建的CBX RIA讨论区
http://www.firebird.net.cn/forum_list.asp?forum_id=11
CBX RIA案例:
http://www.firebird.net.cn/forum_list.asp?forum_id=12
CBX RIA QQ群
主讨论群:53623431(已满)
第二群:16169282
第三群:63756040
第四群:64740999
第五群:511572126
CBX的作品: