作者:CppExplore   http://www.cppblog.com/CppExplore/和 http://blog.csdn.net/cppexplore同步发布。
近3年没发文章,谨以本文总结我和团队兄弟们3年在业务之外的工作成果。

1 产品目标

降低高性能服务领域开发门槛,提高开发效率,同时解决测试、运维、监控、数据分析中的各类问题。

围绕此目标,sBPM(snda Business Process Management:盛大业务流程管理)将流程管理概念延伸到高性能服务器领域,使用SOA服务编排配置方式进行服务开发与组装,提供外围支持工具,封装监控、告警、日志类基础功能。

2 产品功能

1)支持SOA服务路由

2)支持SOA服务编排:对多个服务进行调用流程编排

Ø 通过sBPEL语法(xml风格)描述业务流程

Ø 编排流程支持:并行调用、串行调用、跳转流程,支持根据服务任意返回值、流程内变量等进行跳转或赋值操作。

Ø 支持对编排结果嵌套编排

Ø 编排目标原生支持sBPM自定义二进制协议,通过外部适配支持对HTTP协议以及其他协议进行编排。

3)支持服务编排语法进行服务开发

Ø 通过异步插件机制可任意扩展编排目标,已支持:本地内存、memcache、redis、mysql、oracle,且针对各数据源特点不同分别支持一致性hash、分库分表等策略。通过对基础存储进行编排达到服务开发的目的

Ø 通过同步插件机制可任意扩展流程内编排逻辑,已支持大量常用逻辑插件。

4)提供BPEL4WS语法向sBPEL语法转换工具,可使用BPEL4WS可视化流程编排工具进行编排

5)提供配置接口、明细日志、性能数据接口、业务量数据接口、告警接口等支持。尤其对实时日志分析提供特别支持。

6)对编排结果接口,提供HTTP/TCP两类通用授权网关对外暴露。提供TCP接口的同步、异步IPC调用。

7)对编排结果接口,提供可视化测试用例编辑器以及自动化运行器。

3 类似产品比较

在后端服务器领域,没有类似支持SOA服务编排的产品,其他领域产品存在部分类似点,比较如下:

1)    sBPM与ESB比较

ESB是对已存在的复杂异构环境的黏合剂,主要强调消息路由、协议适配。

sBPM拥有完善产品线,虽有扩展机制支持组合已有系统,但更侧重于从无到有开发全新系统;sBPM虽支持消息路由功能,但更强调服务编排功能。

通过ESB的协议适配机制可以大大加强sBPM的编排能力,可作为sBPM的补充。

2)sBPM与BPEL4WS类产品、jBPM比较

BPEL4WS使用XML语法描述业务流程,由BEA、IBM和Microsoft编写和公布,是针对WEB服务的SOA组合编排,代表产品众多,不详举。

sBPM使用sBPEL描述业务流程,提供BPEL4WS语法向本语法翻译工具,可复用BPEL4WS的可视化流程开发工具,与BPEL4WS定位于WEB服务编排不同,sBPM侧重于高性能后端服务,通过内置插件以及扩展服务不限编排组合对象,可以是基础服务、cache、本地内存、redis、mysql、oracle、http接口等。

jBPM使用自定义jpdl描述业务流程,提供可视化流程编辑器、调试器,定位为信息化、工作流领域,不强调编排目标与性能,更重视流程数据持久化、与人交互流程。

4 产品优点

1) 产品线完善:覆盖编排运行容器、可视化编排工具、可视化测试工具、运营支撑平台等。

2) 缩短产品开发时间:基于sBPM产品开发新产品,完全配置方式,颠覆传统开发方式,将产品研发时间完全缩短到产品需求提炼过程。

3) 提高产品质量:开发过程不会引入bug,节省测试成本。

4) 产品高可扩展、可维护:流程配置完全贴近业务本质,保护流程投资。流程编排方式更容易产生更强大、功能更完善的产品,维护更直接简单。

5) 高性能:sBPM将性能与稳定性做为本产品第一竞争力,容器在初始化阶段解析流程文件到内存结构,运行中采用全异步机制。基于sBPM配置产生的产品天生具有高性能,高于手写方式。

6) 可运营性:sBPM产品融合我方实际运营经验,关注配置、告警、性能、日志、安全等方面。

5 产品使用情况

通过近3年持续发展与推广,sBPM已在盛大基础平台内广泛使用,涵盖认证、注册、用户信息、计费、安全等业务。目前sBPM产品已管理过10T关系型数据库、几十亿记录,涵oracle、mysql、hbase、memcache、redis多种数据源,每日外部请求量近10亿次,内部组合调用过30亿次。

6 产品展望

1)将sBPM独立产品化,与内部运营支撑系统藕荷部分重构为插件接口,裁减掉不适合产品化部分。

2)将sBPM和私有云概念结合,搭建PAAS平台,对外提供运营服务。

sBPM产品介绍的更多相关文章

  1. FastReport产品介绍及免费下载地址

    公司地址: 俄罗斯 公司网址: http://www.fast-report.com 详细信息: 由技术总监Alexander Tzyganenko创建于1998年,Fast Reports, Inc ...

  2. 构建一个用于产品介绍的WEB应用

    为了让用户更好地了解您的产品功能,您在发布新产品或者升级产品功能的时候,不妨使用一个产品介绍的向导,引导用户熟悉产品功能和流程.本文将给您介绍一款优秀的用于产品介绍的WEB应用. 就像微博或邮箱这类W ...

  3. CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 转载

    CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 2016年09月01日 13:56:30 疯子19911109 阅读数:4823 标签:  ...

  4. 【转】虚拟化(一):虚拟化及vmware产品介绍

    由于公司最近在做虚拟化监控,因此就需要把虚拟化方面的知识给学习总结一下,对于虚拟化的概念,摘自百度百科,如下:         虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机 ...

  5. WIZnet相关产品介绍

    WIZnet  自1998年在韩国创立以来,一致专注研发全硬件TCP/IP协议栈芯片.同一时候开发设计相关网络模块和无线产品,同一时候 WIZnet 鼓舞开源硬件.相关开源硬件产品也已层出不断. 主要 ...

  6. 虚拟化(一) -VMware产品介绍

    https://www.cnblogs.com/zhrngM/p/9547928.html 由于公司最近在做虚拟化监控,因此就需要把虚拟化方面的知识给学习总结一下,对于虚拟化的概念,摘自百度百科,如下 ...

  7. Nagios学习实践系列——产品介绍篇

    Nagios介绍 Nagios是一款功能强大.优秀的开源监控系统,它能够让你发现和解决IT架构中存在的问题,避免这些问题影响到关键业务流程. Nagios最早于1999年发布,它在开源社区的影响力是相 ...

  8. iNeedle产品介绍

    一.产品简介 1.产品背景 1.您曾经遇到过下面的问题和烦恼吗?2.当网站上线以后,如何实时的了解网站的运行状况?3.当网站访问速度慢,是升级服务器?还是升级带宽?还是优化网站代码?4.当网站新上线一 ...

  9. 华为WLAN产品介绍-05

    无线AP与AC的区别 WLAN系统一般由AC(接入控制器)和AP(无线接入点)组成. 无线AP,为Access Point简称,一般翻译为“无线访问节点”,它是用于无线网络的无线交换机,也是无线网络的 ...

随机推荐

  1. C++专题 - 修练8年C++面向对象程序设计之体会 林锐

    六年前,我刚热恋“面向对象”(Object-Oriented)时,一口气记住了近十个定义.六年后,我从几十万行程序中滚爬出来准备写点心得体会时, 却无法解释什么是“面向对象”,就象说不清楚什么是数学那 ...

  2. js实现文件上传,删除效果

    效果图: 刚开始: 点击按钮"选择更多后",可以添加很多选择文件: 点击按钮"删除"后: 实现代码: <!DOCTYPE html><html ...

  3. 在python 中有时候我们用数组

    在python 中有时候我们用数组操作数据可以极大的提升数据的处理效率, 类似于R的向量化操作,是的数据的操作趋于简单化,在python 中是使用numpy模块可以进行数组和矢量计算. 下面来看下简单 ...

  4. 学渣也要搞 laravel(2)—— HTTP路由[1]篇

    前几天忙了,然后快两个星期没有发博客.今天正式回归.哈哈 1. 路由 说到路由当时学的时候给我疑惑了几天..没有仔细看文档.然后一脸蒙蔽的去用 postman[谷歌插件] 测试路由方法.然后就很奇怪 ...

  5. php 函数 array_slice

    array_slice array_slice -- 从数组中取出一段 <?php$input = array("a", );      // returns "c ...

  6. Hierarchy Viewr 配合 adb 命令 查看窗口属性

    Hierarchy Viewr 可以看到当前 的 窗口层次如下

  7. 结合使用 Oracle Database 11g 和 Python

    结合使用 Oracle Database 11g 和 Python 本教程介绍如何结合使用 Python 和 Oracle Database 11g. 所需时间 大约 1 个小时 概述 Python ...

  8. 几个模式识别和计算机视觉相关的Matlab工具箱

    模式识别.计算机视觉.图像处理等领域大部分是对一些图像等数据的处理,比较常用的语言是C++和Matlab,相应也对应很多库,象opencv等,都是很好用功能也很强大,但是对于数据处理更方便的应该还是M ...

  9. 检测目标程序ELF bit是32还是64

    android操作系统在5.0之后加入了对64位程序的支持,同时兼容运行32位的进程 android的进程绝大部分是zygote父进程fork出来的子进程 zygote进程fork出来的进程是32位进 ...

  10. 如何分析matlab程序的主要效率问题

    利用profile on 在需要分析效率的程序段前后加入 profile on profile off 然后,在common line中输入profile viewer即可观察到这段程序的效率