QCon北京2014大会4月17—19日@InfoQinfoqchina特别感谢QCon上海合作伙伴BPM在游戏支撑业务的实践2013.11王洪涛BPM实践场所BPM核心解析BPM带来变化游戏支撑业务是BPM的最佳实践场所之一什么是BPM?-业务流程管理(BusinessProcessManagement)游戏支撑业务是BPM的最佳实践场所之一松耦合业务调整灵活便捷系统维护团队分工协作游戏支撑业务是BPM的最佳实践场所之一BPM非常适合复杂多变的业务游戏支撑业务是BPM的最佳实践场所之一游戏支撑平台正是这种复杂多变的业务游戏支撑业务是BPM的最佳实践场所之一游戏支撑平台5大业务–账号–账务–信息通道–运营支撑–安全风控游戏支撑业务是BPM的最佳实践场所之一•挑战1.游戏多,需求多样2.长期运营,经年累月,系统庞大3.安全问题持续对抗,逻辑漏洞及时修复4.人力有限,时间紧游戏支撑业务是BPM的最佳实践场所之一•怎么办?sBPM将传统业务流程管理(BPM)延伸到高性能服务领域游戏支撑业务是BPM的最佳实践场所之一•sBPM产生的背景•sBPM不仅仅是产品,更是思想•sBPM是盛大自己研发的一个框架型产品1.具有LB的高性能服务器集群2.服务抽象化:所有数据和操作用XML描述成服务,放在sBPM容器中执行3.使用XML对服务的组合、编排控制,完成复杂的业务逻辑,形成新服务4.由统一的网关提供服务级别的商户访问授权5.可拔插的插件框架,完善运维功能、日志、监控、告警等•与其他BPM相关产品比较sBPM与ESB:sBPM与BPEL4WSsBPM与jBPMsBPM与node.js游戏支撑业务是BPM的最佳实践场所之一游戏支撑业务是BPM的最佳实践场所之一•sBPM在盛大游戏内部已广泛使用–5大游戏支撑所有业务–10T在线数据库–5种数据源–每日外部请求量10亿次,内部组合调用过30亿次盛大业务流程管理框架(sBPM)核心解析盛大业务流程管理系统(sBPM)解析sBPM架构盛大业务流程管理系统(sBPM)解析sBPM核心-容器(Container/BPE)服务抽象一切皆服务服务描述文件服务编排/执行编排对象和目的是服务流程描述文件文件加载内存,执行引擎服务路由根据服务号路由纯转发或者容器内盛大业务流程管理系统(sBPM)解析sBPM平台核心-sBPMContainer运行机制•sBPM内置支持,epoll线程内全异步执行原生服务运行机制•sBPM容器主线程同步执行•场景:逻辑运算同步虚拟服务运行机制•线程队列与主线程隔离•场景:各类数据源、插件异步虚拟服务运行机制盛大业务流程管理系统(sBPM)解析•sBPM关键点–业务无关性–关注性能–关注可用性–关注运维方面的配套设施–推广有力度,也需要耐心实施BPM带来的变化实施BPM带来的变化sBPM催生运维平台化–日志平台统一化–业务监控统一化–告警机制统一化–配置平台统一化实施BPM带来的变化sBPM框架带来质量控制的改善•统一抽象催生低成本测试自动化–万能mock工具–自动化测试工具–万能探测工具•软件质量和开发效率的提升–不用关心性能,只关心功能–降低代码bug–开发团队角色分离:专职业务架构师–开发人员多元化发展–开发速度与团队信心–研发流程实施BPM带来的变化sBPM平台带来更多改变Q&Awanghongtao@snda.com王洪涛附录附录一切皆可服务化