开源流程引擎_docker源码分析

开源流程引擎_docker源码分析开源流程引擎Snaker

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

Snaker工作流引擎本着轻量、简单、灵巧理念设计。

一、轻量:

1、可以使用JDBC+Dbutils独立运行,也可以依赖主流的ioc、orm框架运行

2、整个jar占用170K

二、简单:

1、流程组件简单。


开源流程引擎_docker源码分析

这方面纠结很久,像jbpm包括(State/Hql/Sql/Jms/Custom/Java/Script等)真正用到的有几个呢?很多组件仅仅是附属品,但是会增加学习成本

2、表设计简单(目前只有7张表)

http://git.oschina.net/yuqs/snaker/wikis/DataBase

实际上,如果各种数据库对表分区支持较好,可去除历史记录的3张表。

3、上手简单

只需要根据实际的项目环境配置snaker.properties/snaker.xml两个文件即可

三、灵巧:

1、扩展性:暴露较多的可扩展接口,甚至是核心的流程组件(只需在snaker.xml中增加bean的配置即可)。

2、数据持久层面支持jdbc+dbutils、mybatis、hibernate、springjdbc。目前支持的数据库有oracle、mysql、sqlserver。

当然,基于以上三点设计肯定会损失流程引擎的一些特性。所以Snaker目前主要针对中小型项目需要增加工作流特性的系统。

如果,你的项目中部分业务需要使用工作流而觉得JBPM、ACTIVITI开发成本太高时,可考虑Snaker!

项目包括三部分:

Snaker:流程引擎,负责流程的调度与执行

Snaker-Designer:流程设计器(基于Eclipse RCP设计的插件)

Snaker-Web:使用SpringMVC、Shiro、Spring、Hibernate整合的一套案例平台

数据库表设计:

http://git.oschina.net/yuqs/snaker/wikis/DataBase

入门手册:

http://git.oschina.net/yuqs/snaker/wikis/QuickStart

支持以下流程模型:<br>

1、简单直流:


开源流程引擎_docker源码分析

2、选择分支:


开源流程引擎_docker源码分析

3、并行:


开源流程引擎_docker源码分析

4、子流程串行:


开源流程引擎_docker源码分析

5、子流程并行:


开源流程引擎_docker源码分析

6、请假流程的案例:


开源流程引擎_docker源码分析

目前流程设计器的图形元素使用JBPM-JPDL的元素(个人觉得图标比较美观),如下图:


开源流程引擎_docker源码分析

snaker的定位是简单集成,多环境支持(对于运维阶段的项目整合工作流比较有利)。与jbpm、activiti不是一个级别的(我认为这两个框架时大而全),snaker算是精简版(因为舍弃了一些功能,特别是对bpmn支持有限)。

运行速度方面,要看使用什么orm了(主要影响速度的地方还是在持久层)。snaker提供jdbc+dbutils、mybatis、springjdbc、hibernate几种实现。

具体请参考:

wiki:http://git.oschina.net/yuqs/snaker/wikis/home

source:http://git.oschina.net/yuqs/snaker           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/179997.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • CSS3影子 box-shadow使用和技巧总结

    CSS3影子 box-shadow使用和技巧总结

    2021年12月17日
  • C++对象数组「建议收藏」

    C++对象数组「建议收藏」C++对象数组一、对象数组1.C++对象数组的定义:类名数组名[元素个数]例:Studentstu[10];2.对象数组访问形式:数组名[下标].成员名;例:stu[i].print();3.对象数组的初始化:对象数组的初始化通常也是由构造函数来完成的例:关于对象数组的几点说明:  (1)在建立对象数组的时候需要调用构造函数。如果对象数组有100个元素,就需…

  • elasticsearch部署方案_elasticsearch实例

    elasticsearch部署方案_elasticsearch实例来源:http://www.linuxidc.com/Linux/2015-02/114243.htm开始研究搜索了,在自己虚拟机上搭建了一个简易ElasticSearch搜索集群,与大家分享一下,希望能有所帮助。操作系统环境: RedHat 4.8.2-16elasticsearch:elasticsearch-1.4.1集群搭建方式:一台虚拟

    2022年10月13日
  • 让AllocateHwnd接受一般函数地址作参数

    让AllocateHwnd接受一般函数地址作参数http://www.xuebuyuan.com/1889769.htmlClasses单元的AllocateHWnd函数是需要传入一个处理消息的类的方法的作为参数的,原型:functionAllo

  • 解决Oracle数据库1521端口telnet不通问题

    解决Oracle数据库1521端口telnet不通问题现象:服务器的ip地址可以ping通,但是安装oracle过程中的指定的“1521”端口telnet不通过解决办法:1、确保防火墙对1521端口开启; 2、修改oracle安装之后的文件tnsnames.ora(F:\install\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora)中“HOST”的值为”计算机全名“(桌面属性\高级

  • 用代码设置 RelativeLayout.LayoutParams

    用代码设置 RelativeLayout.LayoutParams1.注意不能在RelativeLayout容器本身和他的子元素之间产生循环依赖,比如说,不能将RelativeLayout的高设置成为WRAP_CONTENT的时候将子元素的高设置成为ALIGN_PARENT_BOTTOM。如果parent是wrap_content的话,alignParentRight就意味着要求parent的layout_width=”match_par…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号