0

我有一个不寻常的设计目标,我想使用 OpenESB 来解决。我们有许多文件将由我们的系统生成以传输到另一个系统。根据数据类型、源系统和目标系统,需要进行一系列转换,然后才能将数据上传到目标系统。关于最佳方法的任何建议?

一般要求:

  • 转换的数量和类型很多,并且可能会随着时间而改变。
  • 随着时间的推移,要处理的数据的数量和类型将相当固定。
  • 源系统和目标系统的数量可能会随着时间发生根本性变化。
  • 对于类型、源和目标相似的情况,这些转换中的每一个都可以组合在一起。
  • 根据每个客户的业务规则,可能需要将新的转换替换或插入到序列中,这将需要一个新的单独序列。
  • 解决方案需要尽可能灵活和可扩展。
  • 许多基于类型、来源和目的地的未来要求可能会发挥作用,而我们尚未考虑。这种灵活性是系统的要求。

在我们的思维方式中,似乎一组嵌套的 BPEL 可能是最好的解决方案,每个都调用一个 POJO 类来实现所需的转换。这可行吗?有没有更好的办法?

4

3 回答 3

0

在 OpenESB 中尝试 XSLT 转换。

于 2010-02-09T08:43:42.667 回答
0

我做得更好。我从头开始编写了自己的数据流处理系统。其他所有可用的东西都太重量级和复杂了。

我的新系统(代号 LightRail)运行良好。所有连接都是组件驱动的,并通过单个 JSON 配置文件定义。所有处理和流程控制都通过单个 BeanShell 脚本进行处理。

在过去的 10 个月中,我已经部署了 10 个不同的数据流,连接到 IMAP、SFTP、FTP、文件和一两个数据库。生活又好起来了……

安德鲁

于 2010-10-28T05:30:12.067 回答
0

当涉及到复杂的业务逻辑时,最好将尽可能多的工作委派给 Java 代码,而不是在 BPEL 中做复杂的事情,这些事情随着它们的增长很快就会变得一团糟。我会创建一个 EJB 并从 BPEL 调用它。

于 2010-10-27T21:53:01.993 回答