走在前面
VMware 提供培训和认证,以加速您的进步。
了解更多我们很高兴地宣布 **Spring Statemachine 1.0.0.M1** 的第一个里程碑版本发布。这篇博文也作为对这个新项目的介绍。
虽然写一篇博文介绍来自新闻的尖端技术会很棒,但有限状态机已经存在的时间比这篇博文的读者还要长(爷爷你现在可以放下手了)。有些技术来来往往,还有一些基础技术一直存在,因为它们被证明是有效的。
每个程序员很可能已经在他们的应用程序中使用了某种状态的概念。当应用程序根据该标志做出决策时,使用一个简单的布尔标志本身就是一个简单的状态机。然后程序员会添加更多标志、枚举和一堆 if/else/break 结构,对于简单的用例来说这完全没问题。
将状态和应用程序逻辑烘焙在一起的问题是,随着时间的推移,当应用程序变得更复杂时,代码通常开始看起来像一盘意大利面,每次程序员更改一部分时,其他一些部分就会被破坏。
**Spring Statemachine** 是一个框架,供应用程序开发人员在 Spring 应用程序中使用 状态机 概念,旨在提供以下功能:
在某些事件可能异步发生的应用程序中,正确的状态处理非常重要。这在云环境中尤其重要,因为在云环境中很容易遇到并发问题。**Spring Statemachine** 是状态处理的另一种方式,例如 **Spring Cloud Cluster** 项目旨在通过其功能(如 *分布式锁* 和 *领导者选举*)提供。
项目页面 包含一个简单的示例,让您了解 Spring Statemachine 的工作原理。我们还创建了一些 示例,在我们的参考文档中进行了更详细的说明。这些示例与 **Spring Boot** 打包在一起,并使用 **Spring Shell** 启动交互式 shell,您可以使用它与状态机进行交互。无需重新编译即可查看不同的行为,这是玩转事物的好方法。
我们希望听到大家的反馈,可以通过参与 Spring Statemachine 项目 或在 GitHub 上创建问题或功能请求来表达您的想法。