在 Bluemix 上提供的各种服务中,Java Cloudant 样板是最知名和用得最多的一个。这个样板提供了一个 Web 入门应用程序。与任何样板一样,该应用程序旨在提供一个有用的示例来展示如何使用该服务,以及通过修改代码并将其推送到 Bluemix 来创建您自己的应用程序的可能性。
在 Bluemix 上提供的各种应用程序中,常常缺少一个定期运行的辅助流程,全新的 Java Workload Scheduler 样板提供的示例应用程序也是如此。
为了回答这个问题,我们引入了 Java Cloudant 样板的一个扩展版本。除了 Liberty Java 运行时和数据库,现在还可使用 Workload Scheduler 服务。您可创建各类流程并计划在需要时运行它们。然后可将这些流程集成到您的应用程序中,完全自动地执行这些流程。
样板中提供的示例应用程序展示了如何设置一个令人喜爱的组织程序,以及如何从您的计算机加载文件并将这些文件组织为多个类别。创建一个类别后,您还能修改它或删除它。在本例中,该应用程序缺少一个清理流程来清除数据库中的过时文件。
下图演示了该应用程序的架构,以及可如何使用新样板的服务来实现清理流程。清理流程包含两部分:开发在 Liberty 运行时上运行的 API,以及通过 Workload Scheduler 服务创建一个使用这些 API 的流程并安排运行该流程。
让我们通过分析示例代码的各个部分来介绍一下这两个组件。
Cleanup API 使用的方法是擦除已加载到最喜欢的组织程序中且两天未使用的数据库文件。
下面的代码演示了如何使用 Java API 创建并使用 Workload Scheduler 服务轻松地触发一个流程。
一个流程由定义要执行哪些实际操作的多个步骤组成。在本例中,我们创建了一个 REST Call 步骤来调用已开发的 Cleanup API。创建该步骤后将它添加到流程中,然后触发它,从而执行每天的处理工作。
可供开发人员使用的 Java API 使他们能够创建各种在应用程序中很有用的步骤。目前可用的步骤类型是:
API 客户端库一直处于开发中且频繁地更新。并且也在不断添加新的步骤类型。
您也可以通过使用 TriggerFactory 类方法并定义流程的执行频率和时间,通过各种方式触发该流程。
而且无需使用客户端库,只需在 Application Lab UI 上即可创建流程。
Bluemix 上的 Cloudant Java 样板的 IBM Workload Scheduler 扩展是一种快速且轻松地构建和自动化应用程序的双赢组合。