基于云原生的分布式工作流引擎--Activiti Cloud

原文地址:https://community.alfresco.com/community/bpm/blog/2018/08/13/activiti-core-activiti-cloud-beta1-released

 

我很高兴地宣布,经过一年多的努力和过去4个月的特别紧张的工作,我们准备发布所有Java工件的第一个Beta版本。你可以从Maven Central依赖它们。

在此版本中,我们专注于提供Activiti Cloud的第一次迭代,从现在开始,我们将以增量方式强化每项服务。我们对基础感到满意,现在是时候测试和打磨下一代Activiti了。我们渴望获得早期反馈,如果您发现任何问题或对已发布的工件有疑问,请通过Gitter与我们联系。

 

Activiti Core和Activiti Cloud Beta1中包含哪些内容

 

Beta1专注于为我们的Java(嵌入式)和Cloud Native实现提供基础。

此版本分为两大类:Activiti Core和Activiti Cloud Building Blocks。

 

Activiti Core

在Core上,我们为任务和进程运行时提供了一组新的API,支持从嵌入式到云方法的简单迁移。我们认为这是一个根本性的变化,以便提供专注于运行时和遵循命令模式的长期API支持。我们还添加了安全性,身份和安全策略抽象,以确保在将流程和任务运行时嵌入Spring Boot应用程序时可以快速集成不同的实现。

Activiti Core现在基于Spring Boot 2。在Core上,您应该期望与Spring Boot 2进一步集成。计划采用Spring 5中包含的所有反应功能。重构Core层的一个重要部分是简化运行时,以确保它们不会与其他框架的职责冲突。

新的运行时API集旨在促进无状态和不可变的服务,这使我们能够编写测试,验证和一致性工具,以确保您的业务流程在生产环境中安全可靠地运行。这些运行时API包含新职责,不会弃用Activiti 6.x API。这些新的运行时API在Activiti云层中的服务级别(REST和消息驱动的端点)进行复制。

如果您想开始使用Activiti Core 7.0.0.Beta1,请查看以下教程,其中重点介绍Spring Boot 2应用程序中的ProcessRuntime TaskRuntime  API用法。

Activiti Core Beta1入门

 

Activiti Cloud Building Blocks

在Activiti Cloud方面,我们提供了基础构建模块的初始Beta1版本:

  • Activiti Cloud Runtime Bundle
  • Activiti Cloud Query
  • Activiti Cloud Audit
  • Activiti Cloud Connectors

这些构建模块在设计时考虑了云原生架构,所有这些都构建在Spring Cloud Finchley之上。这些组件共同构成了Activiti Cloud Applications新面包的基础,可以独立分发和扩展。所有这些构建块都可以用作独立的Spring Boot应用程序,但是对于大规模部署,这些组件是使用Docker Containers和Kubernetes作为主要目标平台进行设计和测试的。我们一直在使用Jenkins X 来构建需要在非常动态的环境中进行管理,升级和监控的组件。

 

所有这些构建块都了解它们运行的​​环境,因此它们可以使用SSO / IDM,Service Registry,Data Streams,Configuration Server和Gateways等组件。通过了解环境,我们的应用程序可以独立管理,配置和扩展。

重要的是要了解我们在此版本中还包括一些实验服务,包括:

  • 申请服务
  • 建模后端服务
  • Query Service / Notification Service支持GraphQL
  • Audit Service的另一种Mongo DB实现

 

如果您想从Cloud Native方法入手,我们建议您查看Kubernetes的Activiti Cloud HELM图表:https//github.com/Activiti/activiti-cloud-charts/tree/master/activiti-cloud-full-example

 

这些示例HELM图表可用于启动和运行所有服务。

 

如果您想在GKE中开始使用Activiti Cloud,请查看以下博客文章。

Activiti Cloud Beta1入门

 

接下来会发生什么?

在此版本中,我们没有包含任何UI位,我们专注于构建Cloud Native应用程序的核心服务。在以下Beta2和RC版本中,我们将包括新的后端服务以支持新的Activiti BPMN2 Modeler应用程序。这组新的建模服务和新的Activiti Modeler应用程序目前正在设计中,通过为我们的Activiti云应用程序提供简化的打包机制来实现我们的云部署。

 

在未来的版本中,我们将加强构建块,改进文档和示例,并添加新服务以简化实现。我们正在积极研究IstioKNative等工具,以提供与依赖此类技术的其他服务和工具的开箱即用集成。

 

我们还与Spring Cloud社区一起贡献和协作,以确保我们的组件易于使用和采用,而不是与任何其他Spring Cloud基础架构组件冲突。这还涉及在基于Kubernetes的Pivotal Containers Services(PKS)中测试我们的核心构建块。

 

我们希望提供持续的社区创新流,因此,我们将改变Core和Cloud工件的版本化及其发布生命周期。我们正在按照Accelerate一书中提到的实践,针对我们构建的每个库实施持续交付方法。当然,我们将更新项目的结构,但服务和API将保持不变。

 

您应该期望在Beta和RC工件之间进行一些命名更改。我们仍在研究新的服务名称和配置。这将在每个版本的发行说明中记录。您可以随时关注我们的公共路线图文档(将在接下来的几天内更新),以用于未来的Beta,RC和GA版本。

 

与往常一样,这是加入社区并提供反馈的好时刻。如果您正在研究构建Cloud Native应用程序,我们非常乐意与您分享并获得经历同一旅程的人们的反馈。随意加入我们的每日开放式立场或在我们的Gitter中ping我们。

猜你喜欢

转载自blog.csdn.net/ccc7574/article/details/83451559