***多层分布式应用程序设计:ASP.NET WebServer 和.NET Remoting 体系架构选择问题?
多层分布式应用程序设计:ASP.NET WebServer 和.NET Remoting 体系架构选择问题?
系统结构:数据服务器---应用程序服务器---客户端程序(包括:VC写的桌面应用程序和 C#写的WEB程序 )
具体要求:
1、“VC写的桌面应用客户端程序” 能通过 “应用程序服务器”将数据保存到“数据库服务器”中;并且“VC写的桌面应用客户端程序” 能够通过“应用程序服务器”进行查询操作并将数据显示到“VC写的桌面应用程序”客户端上。
2、“C#写的WEB客户端程序” 能通过 “应用程序服务器”来查询“数据库服务器”中的数据,并显示到“C#写的WEB客户端程序”上。
ASP.NET WebServer 或 .NET Remoting 能满足以上2个条件吗?
或者是都不满足,需要用到COM+ 来实现此 多层分布式架构??
------解决方案--------------------这种情况用.NET Remoting 应该实现不了,.NET Remoting 主要是在.NET框架下应用的东西
我想你的应用程序服务器应该是C#的程序吧,那么VC客户端程序跟C#的应用服务器不可能通过.NET Remoting交互。
用ASP.NET WebServer的话,你的C#写的WEB客户端程序与应用程序服务器是可以交互了,对VC不是很熟悉
所以不知道VC能不能调用ASP.NET WebServer,不过我想应该是有办法的。最好采用ASP.NET WebServer。
其实个人觉得如果VC不能调用ASP.NET WebServer 的话也没有什么关系,不一定非要用ASP.NET WebServer 或 .NET Remoting ,VC和应用程序服务器可以通过SOCKET通讯,在服务器端照样可以处理,稍微麻烦一点,不过并不是很麻烦,只是需要在应用程序服务器反序列化一下而已。
以上是个人观点,也可能有很多不成熟的地方,请各位大侠指正!!
------解决方案--------------------操作数据库时的效率?
这个用Remoting和WebService没有关系!!你把程序写好就好了。
只是在网络传输方面,WebService的性能比Remoting差一点。
但是WebService功能要比Remoting强大一些。
------解决方案--------------------用webservice或者com+肯定可以实现的,remoting的话,不知道c++可不可以调用,没做过相关的。如果remoting可以的话,推荐用remoting,速度比webservice快,直接走tcp/ip啊
------解决方案--------------------如果都是托管代码,用:.NET Remoting,效率高。
如果要跨平台,或者用不同的工具(如PHP,JSP,ASP,C++等)开发,用WebService。
WebService的Soap协议比较臃肿,就是为了跨平台的。
你这种情况建议用WebService。
------解决方案--------------------用WCF吧...如果不能使用.NET 2.0以上版本则建议Web Service...Remoting开放性不好...