各位专家:
    我想设计如下的三层应用程序:
数据库使用Oracle,使用Delphi开发,结构三层,由于该系统涉及安全问题、用户数多、网络传输带宽只有512K的问题,打算使用多线程,即:前台提供登录的仅需录入
机关、员工号、密码三个选项,需要对机关进行代码转换、员工号进行处理,密码进行加密,产生一个Oracle用户,然后在登录后台数据库Oracle进行数据操作,每一个不同的用户都对应Oracle的一个用户,登录成功即创建Oracle进程,退出系统则释放进程。我采用如下的方式进行构建,请指出不足并帮助我的疑难。
*客户端:登录界面仅进行简单录入,使用动态链接库调用过程和应用程序服务器握手,前台是否需要使用TThread进行多线程设计?----问题1
*应用程序服务器:我采用新建一个ActiveX Library的方式,然后新建一个远程数据模块,用来管理其它所有的服务,是否使用Type Library新建Method的方法,把所有加密过程,员工号、机关处理过程,直至最终和数据库联接,如些设计是否太复杂啦,如何分别设计不同的服务或对象,是否在该Library下多建远程数据模块还是使用Automation Object?你们认为应使用何种方式?----问题2
*数据库:是否使用APARTMENT的远程数据模块就实现多线程,我该如何控制每个用户进程的创建及释放?-----问题三 
确实没有太多的分数,以后我可以补,望多多指教!!!

解决方案 »

  1.   

    这个的话,我觉得很难说,可能作过跟你相同的环境的人并不多!从理论上说,多线程并不能提高运行速度!而且从总的运行时间来说,多线程还会增加运行时间!我想这个你也明白!至于用多线程,其实最主要的考虑,就是在单cpu的机器上,用spooling技术实现实时系统的一个技术。我的看法还时,先做一个,试试,如果可以,那么就正式开发,不行的话,就重新来!呵呵,迭代开发,现在用的还是蛮多!
      

  2.   

    请问小小:
       要如何实现你所说的“服务器层做一个登录处理,根据用户权限的不同分配不同的接口”
    ,能否给个说明或例子?谢啦
    mail:[email protected]
      

  3.   

    将服务端做成COM+吧,好像你说的这些问题在COM+中都不是问题了充分利用操作系统提供的功能应该是比较好的解决方案如果你是用WINDOWS