2

情况:一些银行有旧的遗留 ABS(自动银行系统)。

银行希望:

  1. 通知旧的旧 CRM 系统有关客户的帐户更改(发布操作)。
  2. 检查客户卡的 PIN 码(请求/响应操作) - 在同步模式下。

ABS 是在非常古老的私有技术中通过 StoredProcedures 调用实现的。所以,我只能通过数据库连接到这个系统。

您知道哪些 Java/.Net (ESB) 应用程序与旧/遗留数据库系统集成的方式?

写/发布操作

任何供应商的数据库服务器:

  1. 扫描表以查找新条目 - 速度太慢。
  2. 触发器(如果它们受支持),它处理 SQL 更新并将事件信息插入和写入某个表。并且应用程序侦听器应该检查此表中的事件。
  3. Oracle serevr:PL/SQL 触发器 + Oracle AQ。和 JMS 的监听器。

读取操作

  1. 只需将结果写入 ABS 表 - 危险。

  2. ...

如何以同步模式通知遗留数据库系统有关响应的信息???如何在同步模式下实现写/读???

同样,您知道哪些 Java/.Net (ESB) 应用程序与旧/遗留数据库系统集成的方式?

4

3 回答 3

2

许多供应商都在大肆宣传 DataServices。我认为这些产品的最大价值在于集成不同的数据源。

我会考虑制作一个简单的“应用程序”,将这些数据作为服务公开

于 2008-10-11T16:38:12.510 回答
1

这取决于许多因素;特别是数据库的读/写吞吐量和性能敏感度。

数据库往往是有点敏感的东西,当它们经过微调以在特定系统中用于生产时,对于来自任意其他系统的通用访问通常非常脆弱;人们经常将数据库复制到另一个只读从数据库,然后可以用于进行集成工作和查询等。

然后,您可以根据需要使用触发器/轮询/JMS,而不会影响原始数据库。

取决于使用的数据库复制技术;然后,您可以经常在副本数据库中安装触发器(可以不时从主数据库中获得一点延迟) - 以最大限度地减少对生产数据库的影响

于 2008-10-08T10:10:30.387 回答
0

我可以建议您在银行中使用 Mule 作为 ESB(另请参见http://www.mulesource.org/display/MULE/Home)。

它允许您直接与数据库通信(jdbc 级别必须与存储过程以及表/视图级别一致)。我在将核心银行系统(数据库级别,Oracle)与独立应用程序(Web 服务级别)集成方面有积极的经验。

坦率地说,我没有得到你所有的问题(如果你愿意的话,你可以直接用俄语问我),但是 IMO Mule 是你的方式 - 它可以使用 JMS、JDBC、文件级别和许多其他内容,并将同步和异步事件处理为好吧(另请参阅http://www.mulesource.org/display/MULE2USER/Available+Transports)。

再次感谢。

PS 为了让讲英语的观众更清楚,我可以建议您使用更标准的术语核心银行系统而不是 ABS(这在 xUSSR 国家/地区意味着相同)。

于 2008-11-01T20:03:45.927 回答