sBPM产品介绍
作者: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产品介绍的更多相关文章
- FastReport产品介绍及免费下载地址
公司地址: 俄罗斯 公司网址: http://www.fast-report.com 详细信息: 由技术总监Alexander Tzyganenko创建于1998年,Fast Reports, Inc ...
- 构建一个用于产品介绍的WEB应用
为了让用户更好地了解您的产品功能,您在发布新产品或者升级产品功能的时候,不妨使用一个产品介绍的向导,引导用户熟悉产品功能和流程.本文将给您介绍一款优秀的用于产品介绍的WEB应用. 就像微博或邮箱这类W ...
- CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 转载
CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 2016年09月01日 13:56:30 疯子19911109 阅读数:4823 标签: ...
- 【转】虚拟化(一):虚拟化及vmware产品介绍
由于公司最近在做虚拟化监控,因此就需要把虚拟化方面的知识给学习总结一下,对于虚拟化的概念,摘自百度百科,如下: 虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机 ...
- WIZnet相关产品介绍
WIZnet 自1998年在韩国创立以来,一致专注研发全硬件TCP/IP协议栈芯片.同一时候开发设计相关网络模块和无线产品,同一时候 WIZnet 鼓舞开源硬件.相关开源硬件产品也已层出不断. 主要 ...
- 虚拟化(一) -VMware产品介绍
https://www.cnblogs.com/zhrngM/p/9547928.html 由于公司最近在做虚拟化监控,因此就需要把虚拟化方面的知识给学习总结一下,对于虚拟化的概念,摘自百度百科,如下 ...
- Nagios学习实践系列——产品介绍篇
Nagios介绍 Nagios是一款功能强大.优秀的开源监控系统,它能够让你发现和解决IT架构中存在的问题,避免这些问题影响到关键业务流程. Nagios最早于1999年发布,它在开源社区的影响力是相 ...
- iNeedle产品介绍
一.产品简介 1.产品背景 1.您曾经遇到过下面的问题和烦恼吗?2.当网站上线以后,如何实时的了解网站的运行状况?3.当网站访问速度慢,是升级服务器?还是升级带宽?还是优化网站代码?4.当网站新上线一 ...
- 华为WLAN产品介绍-05
无线AP与AC的区别 WLAN系统一般由AC(接入控制器)和AP(无线接入点)组成. 无线AP,为Access Point简称,一般翻译为“无线访问节点”,它是用于无线网络的无线交换机,也是无线网络的 ...
随机推荐
- 使用ArrayList对大小写字母的随机打印
从a~z以及A~Z随机生成一个字母并打印:打印全部的字母 package com.liaojianya.chapter1; import java.util.ArrayList; /** * This ...
- 阻塞式和非阻塞式IO
有很多人把阻塞认为是同步,把非阻塞认为是异步:个人认为这样是不准确的,当然从思想上可以这样类比,但方式是完全不同的,下面说说在JAVA里面阻塞IO和非阻塞IO的区别 在JDK1.4中引入了一个NIO的 ...
- 【原创】win7同局域网下共享文件
本文章用于解决win7局域网共享文件问题: 首先保证两台机器可以ping通: 检测方法: win+R输入cmd打开命令行,输入ping 对方主机ip 不知对方ip可以在在命令行中输入ipconfig ...
- ecshop安装程序源码阅读-安装脚本(1)
定义系统判断常量 引入安装初始化文件 设置时区 报告所有错误 定义站点根常量 定义php自身相对路径 引入系统,公共函数库 引入并初始化错误处理对象 引入并初始化模板引擎 引入安装相关业务 发送HTT ...
- php 函数 array_slice
array_slice array_slice -- 从数组中取出一段 <?php$input = array("a", ); // returns "c ...
- Java实现单向链表
/* 先定义一个Node类用来存储节点的值域和指针域 * 即当前节点中的值和后面节点的方法 * 在C中就是相当与定义一个结构体类型一个数据域和指针域的方法 */class LNode{//这个写法已经 ...
- Android 下拉刷新控件Android-PullToRefresh
需要用到一个开源库 Android-PullToRefresh https://github.com/chrisbanes/Android-PullToRefresh ---------------- ...
- JavaScript 自定义单元测试
<!doctype html> <html> <head> <meta charset="utf-8"> <script> ...
- Linux脚本
放置在/usr/local/sbin下面: 收到一个问题:"-bash XXX 没有权限":需要在此目录下执行chmod +x filename 收到一个问题:"-bas ...
- Hadoop 学习笔记 (十) MapReduce实现排序 全局变量
一些疑问:1 全排序的话,最后的应该sortJob.setNumReduceTasks(1);2 如果多个reduce task都去修改 一个静态的 IntWritable ,IntWritable会 ...