一个SOA架构

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

基本是参照微软的SOA架构来设计。

1,数据源:可以是内部的数据库,也可以是外部的Web Service,甚至是其他系统或者平台的对象模型;

2,数据访问组件:在VS.NET中使用组件类来实现,好处是有设计界面,可以把存储过程拖入到这些组件中,并可以对数据命令对象进行可视化的设计,同时其中使用DB Helper来调用存储过程的方法一致,简洁;

3,Service Agent,使用VS.NET来自动生成的;

4,和其他系统的集成,就要根据不同的情况,来使用相应的适配技术;

5,使用Typed DataSet来实现Business Entity;根据情况,可能需要把三种类型的数据源都进行映射;使用Typed DataSet来实现BE的好处是VS.NET可以快速的生成;

6,商业逻辑的组件,可能会通过访问几个(几种不同的)数据访问组件、SA和Adapter来完成相应的业务逻辑;

7,服务接口(Service Interface)或者说远程处理的(Endpoint)充当了Facade层;且在Endpoint组件中继承ServicedComponent来实现自动事务;

8,对Endpoint定义Interface,用于Client的调用,这样的好处是Client不需要部署Endpoint组件,且通过Utility的帮助,可以实现开发时进行本地调用,部署时就变成远程调用;

9,WinForm和WebForm的Client通过Endpoint的Interface来获取Typed Dataset,然后使用相应的控件来呈现这些Typed DataSet;

10,本来Endpoint通过配置成HTTP,SOAP,对于客户端来说实际上也算Web Service,但对于一些异构Client不能识别.NET的一些类型,或者对于一些轻型Client,如Device Client,可能需要实现额外的Web Service。

11,对于第10点来说,如果避免使用.NET所特有的数据类型的话,Endpoint也可以被外部系统访问。

自我总结:

这样的构架基本符合了微软的SOA,且对其中的具体组件进行了规范,充分使用了VS.NET这样的可视化开发工具。因而即能保证系统的灵活性,扩展性,伸缩性,也同时保证了开发的效率。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航