技术开发 频道

WebLogic Platform中的受管文件传输功能

处理超大文件

  发送基于文件的订单的交易伙伴可能会向 GlobalTx 的 OMS 发送超大文件。这些文件通常可能大于 100 MB。使用传统方法来处理在单批中发送的超大文档文件可能会严重损坏系统。这是因为 XML 转换需要使用大量内存,而由于这些文件超大,内存会迅速耗尽。

  WebLogic Platform 使用文件控件在文件系统中方便地读取、写入或追加文件。对于包含大量单个记录的超大文件,有一种方法是使用文件控件将文件分割成使用模式的单个记录。

  此外,使用文件控件处理文档还可以优化性能。下面是使用 WebLogic Platform 文件控件处理超大文件的特点和优点。

  • 文件控件使用 1.4.1 NIO 提高性能。
  • 支持超大 XML 文件的读取和写入。
  • 支持超大文件的 readline 和 append 操作。
  • 文件事件生成器支持特大文件的文件名传递。

端到端文件管理

  文件管理是文件传输在如 GlobalTx 所需的关键任务、实时的环境中得以采用的另一重要方面。由于在实际 B2B 应用场景中的使用超出了企业范围,因而可从单个控制点看到整个企业内以及企业外的所有传输活动就成了一项基本要求。图 2 显示 GlobalTx 如何使用 WebLogic Portal 的基于文件系统的内容储存库来管理交易伙伴发送和接收的文件和相关元数据。它提供诸如版本控制、文件夹管理、登入/登出和元数据管理等高级语义。

  元数据包括有如时间戳、内容实体大小这样的系统属性(虚拟内容存储库用这些属性来管理基于文件的内容)。还可能包括如交易伙伴信息(文件发送者)、已接收数据的转换信息以及传输后处理的状态等这样的应用程序属性。所有这些都可以通过基于文件系统的内容储存库来方便地管理。如果文件传输作为触发批处理业务流程的大量信息流入使用,那么该文件及其相关的元数据应该可以从业务流程进行访问。在 WebLogic Platform 中,由内容储存库管理的所有文件均可使用业务流程内的内容管理 API 来访问。

整合

  我们已了解了 GlobalTx 如何使用 WebLogic Platform 构建一个全面的基于 SOA 的受管文件传输解决方案。下表对一些要求和助力于该方案的相应组件进行总结。

编号SOA 要求方案使用的组件
1 安全性 使用 AppGate 的 MindTerm 创建的自定义 Java 控件,提供安全的 FTP
2 文件处理自动化 用于事件处理的文件事件生成器和用于调度的定时器服务
3 文件转换 用于生成从非 XML 到 XML 转换映射和使用 WebLogic 集成消息转换功能的 Format Builder
4 处理超大文件 将数据拆分为单个记录的文件控件和使用模式
5 端到端文件管理 WebLogic Portal 的基于文件系统的内容管理储存库

总结

  现在,几乎每个公司都和 GlobalTx 一样不同程度地使用文件传输。这些传输通常是整个 IT 操作中的重要部分。尽管基于消息的企业应用集成 (EAI) 为集成需求提供了灵活而粒度化的解决方案,企业还是不宜尝试一次性地跨越到百分之百的基于消息的实施,而是适合(并且慎重地)先在“混合”的环境下运行数月甚至数年。最低风险的方法是将部分操作逐步移到基于消息的集成形式,逐项替换文件传输活动。事实上,有些文件传输活动可能要永久保留。有些情况下,文件传输是达成理想效果的非常好的途径。

  因此,企业内部及外部集成策略的关键问题是如何使基于文件的活动与基于消息的活动交互操作。答案是拥有一种将文件映射到消息或将消息映射到文件的功能。使用这样的工具,就可以使应用程序在“支持消息”的同时能被处理文件接口的应用程序调用。映射引擎可将文件分割成单个的消息(例如,与文件中的特定记录对应),这些消息随后可用来驱动支持消息的应用程序。反过来,映射引擎重新组合消息,使基于文件的应用程序可以接收响应。我们已了解如何应用 BEA WebLogic Platform 的受管文件传输功能成功满足 GlobalTx 的需求。

0
相关文章