第 15 章 cron
仅支持消费者
Cron 组件是一个通用接口组件,它允许在特定时间间隔内使用 Unix cron 语法触发事件(例如 0/2 * * * ?
用来每两秒触发事件)。
作为接口组件,Cron 组件不包含默认的实施,而是要求用户插入所选实施。
以下标准 Camel 组件支持 Cron 端点:
- Camel-quartz
- Camel-spring
Camel K 还支持 Cron 组件,它可在 cron 表达式需要时使用 Kubernetes 调度程序触发路由。当使用与 Kubernetes cron 语法兼容的 cron 表达式时,Camel K 不需要插入额外的库。
Maven 用户需要将以下依赖项添加到此组件的 pom.xml
中:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-cron</artifactId> <version>3.14.5.redhat-00018</version> <!-- use the same version as your Camel core version --> </dependency>
可能需要额外的库来插入特定的实施。
15.1. 配置选项
Camel 组件在两个独立级别上配置:
- 组件级别
- 端点级别
15.1.1. 配置组件选项
组件级别是最高级别,它包含端点继承的常规配置。例如,一个组件可能具有安全设置、用于身份验证的凭证、用于网络连接的 url 等等。
某些组件只有几个选项,其他组件可能会有许多选项。由于组件通常已配置了常用的默认值,因此通常只需要在组件上配置几个选项,或者根本不需要配置任何选项。
可以在配置文件(application.properties|yaml)中使用 组件 DSL 配置组件,也可直接使用 Java 代码完成。
15.1.2. 配置端点选项
您发现自己在端点上配置了一个,因为端点通常有许多选项,允许您配置您需要的端点。这些选项被分别分类为:端点作为消费者(来自)被使用,和作为生成者(到)使用,或被两者使用。
配置端点通常在端点 URI 中作为路径和查询参数直接进行。您还可以使用 Endpoint DSL 作为配置端点的安全方法。
在配置选项时,最好使用 Property Placeholders,它不允许硬编码 URL、端口号、敏感信息和其他设置。换句话说,占位符允许从您的代码外部配置,并提供更多灵活性和重复使用。
以下两节列出了所有选项,首为于组件,后跟端点。