Shark与Jbpm工作流引擎深度对比分析

4星 · 超过85%的资源 需积分: 9 24 下载量 43 浏览量 更新于2024-09-26 收藏 260KB DOC 举报
本文档深入探讨了两个知名的工作流引擎——jbpm和shark之间的对比分析,主要从以下几个关键方面进行考察: 1. **语言支持**: - **Xpdl**: Shark使用Xpdl (XML Process Definition Language) 来定义流程,而jbpm则采用Jpdl (JBoss Jbpm Process Definition Language),这是jbpm特有的流程定义方式。 2. **持久层**: - Shark有自己的ORM解决方案(DODS),然而其性能和普及度都不如业界公认的Hibernate,jbpm选择使用Hibernate作为数据持久层框架,这使得数据管理更为高效且灵活。 - Jbpm支持jdbc连接配置和主流数据库,而Shark在这一点上可能没有那么全面。 3. **安装与部署**: - 两者都支持独立部署和与其他应用的集成,具备良好的兼容性和扩展性。 - Shark提供web管理工具,但其图形化功能相对较弱,相比之下,jbpm有Eclipse插件用于流程定义,尽管Jawe功能相对较弱,但提供了更多的自定义可能性。 4. **流程设计与编辑**: - Shark的流程设计通过Jawe进行,图形化功能有限;而jbpm允许编辑Jpdl文件,对活动变量和流程逻辑有更强的控制能力,但需手工编辑或与权限模型结合。 - Jbpm有一个Flash版web设计器,虽然不够直观,但有泳道概念帮助用户理解任务分配;shark则在此方面稍显不足。 5. **发展趋势与社区支持**: - 文档没有明确提及这两个引擎的具体发展趋势,但强调了作者希望shark能改进其web设计器并自研一个更好的解决方案。 总结来说,jbpm凭借其对主流技术的整合、更丰富的定制选项以及较为成熟的图形化工具,在稳定性、易用性和可维护性上可能更胜一筹。然而,shark的独特之处在于其自有的ORM解决方案和潜在的发展动力。在做选择时,开发者应根据具体项目需求、团队熟悉程度和社区活跃度来衡量哪个更适合。同时,这篇文章也鼓励读者分享自己的见解和经验,共同完善这两个工作流引擎的对比评估。