您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Delphi >> 几个关于三层架构与开发的问题(请有开发经验的高手帮忙)

几个关于三层架构与开发的问题(请有开发经验的高手帮忙)

来源:网络整理     时间:2016/8/30 2:17:40     关键词:

关于网友提出的“ 几个关于三层架构与开发的问题(请有开发经验的高手帮忙)”问题疑问,本网通过在网上对“ 几个关于三层架构与开发的问题(请有开发经验的高手帮忙)”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 几个关于三层架构与开发的问题(请有开发经验的高手帮忙)
描述:

本人一直是做C/S架构开数据库程序,现在想重新规划一套系统用三层架构来做,可是有以下几个问题一直无法想明白
系统有多个系统模块(业务,生管,成仓等),C/S是每人负责一个子模块的开发(编译成EXE文件),可是利用三层结构开发
时就会有问题,每一个子模块都会对应一个应用程序服务器(EXE或DLL),我想用EXE。
问题1:是否在服务器上面要执行多个应用程序服务器,如果不是那应该怎么做
问题3:在一个应用程序服务器上面是否可以建多个RemoteDataModule远程模块(那么这样儿的话也就相当于是多个服务了)
问题2:如果要更新应用程序服务器就必需停止服务,然后再更新再启动服务,这个更新的问题又如何解决


解决方案1:

看看WCF.满足你的所有要求。
WCF(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下所有的和分布式系统有关的技术,例如.Net Remoting、ASMX、WSE和MSMQ。以通信(Communiation)范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于 Internet;以宿主程序而论,可以以ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+作为宿主(Host)。WCF可以支持的协议包括TCP,HTTP,跨进程以及自定义,安全模式则包括SAML, Kerberos,X509,用户/密码,自定义等多种标准与模式。也就是说,在WCF框架下,开发基于SOA的分布式系统变得容易了,微软将所有与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙。
用过了,效率可以接受。

解决方案2:

关注一下,顶起来!

解决方案3:

你也没有说用什么语言工具的,如果用.NET,VS2005开发
系统有多个系统模块(业务,生管,成仓等)指的是不动部门用不同的子系统还是只是单纯的模块了,如果是不同的系统,同样可以由不同的人员负责开发,应用服务器起三个不同的网站(web service),数据库可以调用同一个,方便各系统的数据共享调用.
.NET省却了很多底层的东西不用去考虑,优越性就不用我在这里做广告了.
至于更新程序方面,不会影响要业务的正常运作,可以不间断业务直接更新系统.

解决方案4:

技术小结:
  一、根据不同连接方式进行不同的应用
  1.DCOM  建议局域网当然在INTERNET网也可以只是防火墙要设置好
    使用DCOM+POOLING+RemoteDataModule就可以实现,其会自动根据RemoteDataModule被占用与使用情况创建与释放RemoteDataModule(即已创建的模块都在使用时,会自动创建新的数据模块),15个连接池(个数可以修改)足可带上300个用户.
  2.SOCKETCONNECTION 用于INTERNET网比较合理
    使用SOCKETCONNECTION+RemoteDataModule+完全端口+数据压宿,效率也非常高。而这种方式是连接一个工作站会创建一个RemoteDataModule,退出时自动释放(SConnect.pas中要进行一定的修改,不然会不知什么时候就DOWN了)。如: 
  V:= ReadVariant(VarFlags, Data);   //modi 否则服务会异常退出,在ReadVariant后要对V进行校验。
  If VarIsEmpty(V) then  //add 进行校
  begin
    raise Exception.CreateRes(@SInvalidDataPacket);
    Exit;
  end;
 二、可以使用RemoteObject实现真正的三层,客户端小,不过应用层比较复杂,若不赶工时的话建议用,以后维护量较小,且特别在查询统计方面口径会统一。

解决方案5:

建议使用WEB SERVICE,其技术到今天已经很成熟了.你所说的问题都不会存在了!
COM技术某些地方太复杂,资料有限,系统复杂后有时出错甚至不知从何找起.
要提醒的是要想你的WEB SERVICE服务端程序运行在WS2003或VISTA版上,需要用D2007,或D2009来写服务器端.

解决方案6:

僵哥说得有理.不过我都是将每次的升级文件放在一个新的目录,再将新的DLL文件(COM组件)注册;这样,在我新注册COM之前就连接服务器的客户端,使用的仍然是旧的服务程序,而在注册之后才连接的客户端使用的是新服务;但这也有版本不一致问题,因此,如果服务器程序是作了重大调整而且要立即生效,那只有关掉服务器程序断开所有客户端连接再注册新的DLL文件.

解决方案7:

向僵哥敬礼
敬礼!!!

解决方案8:

我是做一个通用的服务器,业务逻辑放在数据库里(存储过程),客户端只负责传存储过程的名字以及参数、值。

解决方案9:

可以使用WebService之类的处理.


以上介绍了“ 几个关于三层架构与开发的问题(请有开发经验的高手帮忙)”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3667772.html

相关图片

相关文章