zoukankan      html  css  js  c++  java
  • 论DATASNAP中间件对象池

    在此,笔者以DATASNAP为例,其它中间件以此类推。

    中间件为什么要使用对象池?

    对象池——让所有的对象免堕轮回之苦,对象不再为其生和死而烦恼。

    要想让中间件长久稳定地运行,做到无人值守,对象池很重要,对象池大致分为以下几类。

    1)线程池,DATASNAP使用INDY10作为其通讯控件,其线程池实际上就是使用INDY10的,只是DATASNAP在其基础上再封装了一层壳罢了,留给我们的只需要设置相关控件的属性即可,在些不多说;

    2)服务对象池,DATASNAP向导会生成一个ServerMethodsUnit1.pas单元,该单元中有一个类:TServerMethods1,它就是中间件服务对象,该类PUBLIC里面的方法就是将要为客户端提供服务的远程服务方法。

    3)数据模块池,这个池有点特殊,它本身是一个大的对象集容器池,在数据模块窗体上放有数据库连接对象、数据集对象、巢状对象,因此数据模块池=数据库连接池+数据集对象池+巢状对象池等其它对象池。对于这个池大家可能有争议,为什么不搞成几个独立的池:数据库连接池、数据集对象池、巢状对象池等?答案就是:省事。做成一个池既然可以做到很多个池的效果,那就一个池好了。

    当然还可以有其它的对象池,在此略过。

  • 相关阅读:
    搞懂树状数组
    C#接口(Interface)
    C#接口(Interface)
    C#运算符的重载
    C#和C++的区别(一)
    hdu1874 畅通工程续
    hdu1874 畅通工程续
    C#多态性
    C#多态性
    C#继承
  • 原文地址:https://www.cnblogs.com/hnxxcxg/p/4349186.html
Copyright © 2011-2022 走看看