菜鸟刚学分布式,有个问题要问一下。还有一个问题就是中间层怎么做能连更多的客户端呢? (79分)

  • 主题发起人 主题发起人 wanglongb
  • 开始时间 开始时间
W

wanglongb

Unregistered / Unconfirmed
GUEST, unregistred user!
我的中间层只用了三个控件:ADOConnection1,ADOQuery1,DataSetProvider1,就可以达到
效果了,难道三层结构的中间层这么简单吗,做的这么简单有什么坏处呢?
 
业务逻辑写在中间层
 
那么,怎么做中间层会连更多的客户端呢?
 
这么做基本上是属于没事找事的三层。
我感觉三层应该尽量以接口的方式提供数据或调用,而不是整个的把数据传递给客户端。
即使是按楼主的这种做法也应该用SQL限制返回客户端的记录条数。
 
谢谢远帆大侠的教诲,我想知道我这么做,数据库服务器和中间层会变的很慢吗?
 
hoho,
你应该看看李维老师的
<<分布式多层应用篇>>
再问远帆
做成接口提供数据调用,还用不用DataSetProvider1啦
比如说在接口中定义一个方法GetXXRst(var _recordset);
就不用DataSetProvider1,记录用_recordset智能指针返回.
但是DataSetProvider和ClientDataset的很多好处就没有了,比如说
ClientDataset1.Delta

 
我的方法是还是用DatasetProvider,然后写一个方法GetXXRst();
去修改中间层的企业逻辑,然后将结果通过DatasetProvider传到连接的ClientDataset上.
那个老大还有更好的方法?
 
赞成zxbyh的做法,但这样做在提交数据上好像有问题,请各位指教!
 
我的想法是三层最好由中间层来直接处理数据库,客户端最好不再有数据库的概念,
客户端只是向中间层提出自已想干什么,而怎么处理完全由中间层来做。
如果用这种做法,自然不需要用DatasetProvider,和什么数据记录了。
我想一般情况下客户端没有必要进行数据库的浏览,如果的确有这样的需求,那就用
楼主的方法就可以了吧,比较简单,动态传SQL
 
如果想两全其美的话,可以利用 midas组件来传送数据,然后再服务端用ado组件来
处理数据,以及和服务器之间的数据交换!另外,可以利用接口,提供一些附加功能
比如说:把企业逻辑里面和数据处理关联不大的功能写在接口里,这样是不是会更好呢
请各位大侠指点一二。
 
感觉安全性真是麻烦!!
 
多人接受答案了。
 
后退
顶部