因为博客这里还没搞明白怎么上传源代码,先把我写在codeproject上的链接挂到在这里
How to abstract a WCF Service out of business logic
Service Bus Architecture based on WCF (3): build your ESB
这两篇是系列文章,其实还有第一篇,codeproject告诉我写的太简单不能发表在article里面,所以一直都无法见天日.
ESB已经不是一个新的概念,各个软件供应商也有相应的产品支撑。MS的biztalk,ORACLE的aqualogic等等。很早以前提的EAI可以理解成为ESB+BMP。讨论这些企业级的产品不是今天的主题。我想讨论的是在wcf推出后,我们是否能基于wcf建立一套轻量级的ESB架构以支撑一般业务下的企业消息分发。
一个企业里都有不同的为某项功能而实现的IT应用,每个应用在一定程度上都是信息孤岛。在我的理解里不同用途的企业应用从设计上本来就应该是信息孤岛,这并不违背SOLID原则里的任何一条原则。
Single Responsibility原则描述了小到一个方法,大到一个模块,再大到一个应用程序,它的功能应该是单一的。一个方法如果是更新一条记录那么就不要在这个方法里实现如果这条记录没有找到去而新增一条记录,我们可以剥离出一个更小的方法去实现新增这个功能。同样的,一