1、计费中心+计费系统架构设计说明计费中心 架构设计文档修订版历史日期版本说明作者2009-10-211.0总体设计戴小丹2009-10-271.1系统边界高嵩2009-10-281.2业务流程袁志俊1.简介1.1.目的此文档通过对计费中心总体的业务架构建模,描述了计费中心整体业务架构设计蓝图,对后续的设计和开发提供指导和参照。1.2.围本文档主要涉及计费中心的总体业务架构设计及系统中各个业务模块的架构设计。 1.3.适用对象本文档适用于:产品设计师:根据本文档中描述的架构模型评估需求满足度;开发工程师:参照本文档和详细设计文档进行开发。1.4.参考资料此软件架构设计参考计费系统需求及相关业务文档
2、,如下所示:ITBU业务支撑系统规划V1.0.pptx计费系统UC文档2.构架目标和约束本文档从全局的角度出发描述了计费系统的总体业务架构,打造一个高性能、高稳定性计费平台。3.业务分析3.1.概述目前支持计费模式:1、支持非实时按次计费的后付费业务2、支持按天计费的后付费业务3、支持按天/最大账号数计费的后付费业务(按每份订单每天授权过的最大账号数计费)4、支持首次开通N天(首次使用N次)免费的计费策略5、支持同一份订单同一天暂停恢复多次仅按一天计费(多份订单时按每份订单单独计费,即使同一天退订再开通,按多份订单计费。)6、支持用户使用时按实际付费者收费(老板订购,业务员使用或邀请业务)7、
3、支持按设定的日期出账业务8、支持欠费自动停止欠费服务9、支持充值销账后自动开通销账成功客户的服务3.2.业务主流程4.模块划分4.1.主要模块子系统功能模块数据采集数据分析账务管理4.2.工程划分略4.3.逻辑分层略5.架构设计5.1.总体结构5.1.1.概述本系统设计以覆盖阿里巴巴所有SaaS业务为目标,根据不收费模式(预付费、后付费)进行计费。作为一项复杂、技术含量高的项目,SaaS业务实时计费结算系统设计时从技术和系统设计角度看,应遵循以下原则:开放性基于统一UDB用户体系,保证系统之间交互接口支持多种访问协议,满足多个业务产品线的业务模式。可扩充性系统要有良好的可扩充性。从总体结构到具
4、体硬件设备,都要给将来业务的新技术新产品预留接口,以便进行平滑地升级和资源扩充。容错性和可靠性实时计费网络应用,对系统的可靠性要求极高,关键主机系统不允许停机发布应用。这就需要采取各种容错技术以确保系统正常工作,如不停机发布版本等,但是在硬件设备也需要相应的方案支持,如双机热备、备份电源等技术保证服务器不出现停机故障。安全性在保证高可用性的同时,要有各种措施工具防止对数据的非法访问和篡改,口令就是一种行之有效的工具。网络支撑环境也应有相应的安全性机制如网络管理员权限,各种网络设备配置权限等。5.1.2.开发框架相关框架开发框架Webwork+Spring+Ibatis接口发布访问协议Hessi
5、an项目构建管理Maven数据库Oracle运行环境Jboss-4.2.1.GA开发工具Eclipse5.1.3.技术特性技术特性概述数据异步处理为处理失败的数据提供自动重试等相关策略日志详细跟踪异常定位多任务精确统计数据解决多任务中出现重复统计、遗漏统计等问题历史表数据存储通过数据迁移保证上亿级数据存储和高效检索分区数据存储通过数据迁移保证上亿级数据存储和高效检索5.1.4.技术风险1、异步处理数据准确性。2、支持上百万用户的计费能力。3、系统间联调、集成风险。5.2.基础设施5.2.1.异步框架5.2.2.日志框架5.2.3.多线程5.3.系统设计:核心业务设计5.3.1.周期性计费划价流
6、程收集订单生产计费事件批价汇总订单系统产品系统产生计费明细计费明细表计费汇总表计费系统订单镜像表计费事件表轮询批价(每日)生成订单镜像产生计费汇总ActionDataOther System各种维度的计费统计值5.3.2.非周期性计费划价流程原始消费信息临时表轮询Task数据筛选批价汇总业务系统产品系统产生计费明细计费明细表计费汇总表按用户操作触发计费系统各种维度的计费统计值批价获取原始消费信息产生计费汇总ActionDataOther System5.3.3.各种维度计费统计原始消费信息临时表轮询Task数据筛选业务系统PC2按用户操作触发计费系统各种维度的计费统计值产生计费统计获取原始消费
7、信息ActionDataOther System帐号数5.3.4.出账和服务控制流程账户系统出帐触发服务控制计费汇总表计费系统PC2帐期定时、手工、阀值账单汇总表扣费成功财务系统出帐期计费事件表开通或关闭通知更改账单状态ActionDataOther System是否超过帐期阀值超过帐期阀值帐期阀值日触发产生计费事件订单镜像更改订单状态5.4.系统设计:详细业务设计1.2.3.4.5.5.1.5.2.5.3.5.4.5.4.1.领域模型5.4.2.数据采集类图5.4.3.订单收集时序图5.4.4.实时业务数据采集时序图5.4.5.数据筛选分析类图5.4.6.数据筛选分析时序图5.4.7.实时性
8、批价类图5.4.8.实时性批价时序图5.4.9.周期性批价类图5.4.10.周期性批价时序图5.4.11.计费汇总类图5.4.12.计费汇总时序图5.4.13.帐务管理类图5.4.14.出帐时序图5.4.15.服务控制类图5.4.16.固定帐期服务控制时序图5.4.17.帐期之外扣款触发服务控制时序图5.5.系统设计:系统边界接口5.5.1.收费产品原始数据采集调用形式:Hessian接口名称:insertServiceOp描述:按次收费的产品项消费行为记录接口参数:名称类型说明BillinginfoObject本次产品项所需参数实体Billinginfo属性表述名称类型说明usernameS
9、tring当前使用者名称userIdString当前使用者用户IDpayerMemIdString付款账户人memId, productNameString产品名称productIdString产品IdstartDateDate开始日期endDateDate结束日期AmountBigDemail(特殊业务)不需要批价useAgeBigDemail使用量useUnitString使用量单位返回值:名称类型说明resultString1:表示成功-1:表示参数错误5.5.2.订单开通业务调用形式:Hessian接口名称:installOrder描述:当订单系统生成一条新的订单行记录时,通知定计费系
10、统 接口参数:名称类型说明OrderObject计费系统中订单行镜像Order属性名称类型说明orderedString订单行号ordercodeString订单codecustIdString客户IDbillingTypeString(次/年/月)productIdString产品IDStatusString状态productStrategyIdString促销策略IdstartDateDate开通日期specConditionString特征值isQuotaString是否按配额计算payerMemIdString付款人ID返回值:名称类型说明resultString1:表示成功-1:表示
11、参数错误5.5.3.订单状态变化通知接口调用形式:Hessian接口名称:updateOrderState描述:当订单状态发生变化,订单系统通知计费系统中订单镜像做同步接口参数:名称类型说明ordereId String对应订单系统中订单行号StateString状态返回值:名称类型说明resultString1:表示成功-1:表示参数错误5.5.4.批价接口调用形式:Hessian接口名称:getTotalPrice描述:进行批价接口参数:名称类型说明productKeyString产品项IdfeatureListHashMap特征值measureUnitsString计量单位(年月日) 为
12、空时表示单位是个countBigDecimal购买数量不能为空或0CurrencyString币种,不能为空返回值:名称类型说明EsbResultModelorg.mule.esb.model.tcc.result.EsbResultModel返回产品总价model.getReturnValue():BigDecimal()-1:系统异常,调用失败。-2:表示验证通过但未激活-3:登录名不存在-4:校验失败; 验证成功:返回用户ID5.5.5.计费系统反馈客户账务欠费状态接口调用形式:Hessian接口名称:feedbackUser描述:反馈用户账务信息 接口参数:名称类型说明payerMem
13、IdString付款人Id返回值:名称类型说明ResultString改用户账务情况1:未欠费-1:已欠费5.5.6.扣款接口调用形式:Hessian接口名称:chargeAccount(具体接口名账户系统订)描述:账期出账接口参数:名称类型说明InvoiceObject出账单Invoice属性名称类型说明guidString主键custIdString客户IdcustNameString客户名称payerMemIdString付款人IdtotalAmountBigDecimal总金额rmbAmountBigDecimal人民币总金额twbAmountBigDecimal台币总金额usdoll
14、arAmountBigDecimal美元总金额gbAmountBigDecimal港币总金额ItemList扣款明细InvoiceItem属性表述返回值:名称类型说明guidString主键productIdString产品项IdproductNameString产品项名称orderCodeString订单行CnyString币种AmountBigDecimal金额markAmountBigDecimal标价金额名称类型说明ResultString1.发送成功2.发送失败5.5.7.扣款状态回调接口调用形式:Hessian接口名称:payCallback描述:账务系统扣费成功回调计费系统扣费成
15、功通知接口参数:名称类型说明invoiceIdString计费系统账单IdstateString付费情况返回值:名称类型说明ResultString 1:扣费成功5.5.8.PC2授权用户数接口调用形式:Hessian接口名称:changeAccountNum描述:PC2改变授权用户数接口接口参数:名称类型说明mmIdString付费用户IdcurrentNumInt当前使用量productCodeString产品code返回值:名称类型说明ResultString 1:更新成功5.6.系统设计:数据ER图6.服务器部署略 7.其它7.1.规模分析(可选)略7.2.性能分析及实现(可选)略7.3.质量的达成(可选)略8.附录(术语)英文中文说明
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1