本人从事过3年的移动业务运营支撑系统开发,行业术语叫做boss系统,后又转入游戏行业进行游戏开发。 现设计一个业务运营支撑系统的架构如下:
详细解释各模块如下:
gateway/dispatch : 网关服务程序,使用多个以及dns来实现负载, 负责接受来自外部系统的请求,将外部系统请求的协议格式,转换为内部的协议格式,或反向转换。充当业务消息转发的中转站,防御网络恶意攻击。其中dispatch模块负责事件分发,向注册中心查询业务服务对象地址,并根据业务将业务请求分发给不同的业务服务对象,通过配置实现业务流程的集中控制,顺序控制,有点类似bpel的业务流程定制功能。
busiserver: 业务服务程序,一个业务服务程序下有多个业务服务对象。
gridnode: 进程管理节点,管理一个节点上的所有进程的启动,停止等,busiserver通过gridnode向gridregistry动态注册或注销业务服务对象。
gridregistry: 注册中心, 业务服务对象注册中心,所有的业务服务对象都要向gridregistry注册。dispatch模块只能查询到向gridregistry注册成功的服务对象。gridregistry向 dispatch提供服务对象的地址时,可以选择负载均衡策略。业务服务对象可以静态向gridregistry注册,也可以动态注册。同时gridregistry充当进程管理的中心,gridregistry通过联系所有的g