我刚刚开始为一家正在经历成长痛苦的小公司工作。我不确定我要在这里描述什么样的系统。基本上,我们有许多不同的第三个应用程序的杂烩,这些应用程序正在通过本地化的“集成系统”相互通话,这是一个混合了SQL作业,用.NET编写的后台服务,FTP传输和SSIS等。本地集成系统还是ESB?
是鸟瞰图: 我们面向公众的网站是由供应商在场外托管的订单输入系统(第三方购物车软件)。我们每天每4小时下载订单信息。这些数据然后通过我们自己生产的“集成系统”进行处理,该集成系统将这些信息提供给我们的库存和仓库管理系统(WMS)。它也向MS Great Plains,Pulse,PayFuse和第三方CMS等提供信息。
正如您可能已经猜到的,这种体系结构非常脆弱,并且轻微的事故(例如SQL作业失败的FTP失败)可能会导致数据的差异可能会产生多米诺骨牌效应。有时由于数据相关问题或复制问题可能导致整个仓库停滞不前,我们有时无法接受订单,处理或装运订单。
我的任务是重新构建我们的系统,并消除系统之间的紧密耦合以允许业务增长。我需要了解哪些方面?我一直在研究ESB和SOA,但被告知我的公司无法承担50万美元的承诺,比如说iWay或者Talend。
有什么选择?内部开发的答案是否比ESB实施更便宜?有没有人经历过类似的成长之苦?如果是的话,你是如何处理整合的?
首先:我自己开发了以下软件(主要是)---您可以试试我的FOSS项目Shuttle(https://shuttle.codeplex.com/)。在主机环境中,您可以将您的队列从sql server表中移除。它正在一家大型国际保险公司和南非四大银行之一投产。也可以在其他地方使用,但我不会意识到这一点。给它一个去,请让我知道你应该看看你的想法。 –