Tagetik Data Loader - 架构
Tagetik Data Loader(以下简称"TDL")是一个用 Java 编写的程序,由客户在本地安装和运行,能够执行由 CCH Tagetik 驱动的任务。
TDL 采用模块化结构,是"轻量级"且动态的,即允许在运行时安装、启动、停止和移除模块,无需重启
这些功能通过使用 OSGi(Open Services Gateway initiative)框架来提供。TDL 实际上基于 Apache Karaf 4.4.0,这是一个小型 OSGi 框架,提供了一个轻量级容器,用于部署各种组件和应用程序。Karaf 4.4.0 支持最新的 OSGi R8 规范。
TDL 架构由三层组成,如下所示:

框架层¶
Apache Karaf 是一个小型 OSGi 框架,提供了一个"轻量级"容器,可在其中部署各种组件和应用程序。该框架支持以下功能:
- 热更新。Karaf 通过跟踪 [home] / deploy 目录中的 jar 文件来支持 OSGi 捆绑包的热部署。每当将 jar 文件复制到此文件夹中时,它就会被安装,无需重启容器
- 动态配置。 服务的配置通过专用目录中的属性文件完成。这些配置会被监控,属性文件的更改会传播到服务
- 日志系统。 Karaf 支持多种日志框架(slf4j、log4j 等),可通过单个文件进行配置
- 管理控制台。它提供了一个类 Unix 控制台,通过该控制台可以完全管理容器。还可以扩展控制台并创建自定义命令。
服务层¶
服务层位于框架层之上,与应用层交互,以便与需要访问和使用这些服务的客户开发应用程序进行通信。可用的服务包括:
- JDBC DataSource Factory。提供从 Karaf 中运行的 OSGi 应用程序访问数据库的服务,并通过将 DataSource 安装为 OSGi 服务来从数据库中提取数据
- JNDI。Karaf Naming(JNDI)是一项为 OSGi 服务提供集中注册/查询功能的功能。JNDI API 通常用于从系统目录访问服务
应用层¶
应用层是 Tagetik 开发的应用程序所在之处。它由实现连接器、执行任务并通过 Web 服务与 Tagetik 通信的 Java 程序组成。