TaskFlow/Engines
< TaskFlow
修订于: 2014年3月15日 由 Harlowja
引擎
引擎是真正运行你的tasks 和 flows 的组件。
引擎接收一个 flow 结构(由模式描述),并使用它来决定何时运行哪个 task。
可能存在不同引擎的实现。有些可能更易于使用(例如,不需要额外的基础设施设置)和理解,而另一些可能需要更复杂的设置,但提供更好的可扩展性。理念和理想是,使用 taskflow 的服务的部署者/开发者可以选择最适合其设置的引擎,而无需修改该服务代码。这允许部署者/开发者从使用更简单的实现开始,并随着服务的增长扩展由 taskflow 提供支持的服务。从概念上讲,所有引擎都应实现相同的接口,以便轻松地用另一个引擎替换一个引擎,并提供对模式解释方式的相同保证——例如,如果引擎运行线性流程,则无论实际运行该线性流程的引擎类型如何,任务都应按顺序一个接一个地运行。
注意:引擎可能具有不同的功能/配置,但总体而言,接口将保持相同,并且对使用 taskflow 的开发者和用户应该是透明的。
支持的类型
分布式
当你想让你的应用程序的 tasks 和 flows 在一个高度可用且对单个故障具有弹性的系统中执行时。
支持以下内容
- 通过 kombu 支持的传输连接的远程工作者。
- 结合任务板,提供一个高可用的引擎编排器和工作者组合。
- 以及更多…
传统
当你想让你的 tasks 和 flows 在你的应用程序现有框架内运行,同时仍然利用所提供的功能时。
支持以下内容
