为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

(精心整理)计费中心+-+计费系统架构设计

2021-03-29 15页 doc 2MB 78阅读

用户头像 机构认证

夕夕资料

拥有专业强大的教研实力和完善的师资团队,专注为用户提供合同简历、论文写作、PPT设计、计划书、策划案、各类模板等,同时素材和资料部分来自网络,仅供参考.

举报
(精心整理)计费中心+-+计费系统架构设计[计费中心]架构设计文档修订版历史日期版本说明作者2009-10-211.0总体设计戴小丹2009-10-271.1系统边界高嵩2009-10-281.2业务流程袁志俊 目录目录TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc245011566"1.简介41.1.目的41.2.范围41.3.适用对象41.4.参考资料42.构架目标和约束43.业务分析43.1.概述43.2.业务主流程54.模块划分54.1.主要模块54.2.工程划分54.3.逻辑分层55.架构设计65.1.总体结构65.1.1.概述65.1.2...
(精心整理)计费中心+-+计费系统架构设计
[计费中心]文档修订版历史日期版本说明作者2009-10-211.0总体设计戴小丹2009-10-271.1系统边界高嵩2009-10-281.2业务流程袁志俊 目录目录TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc245011566"1.简介41.1.目的41.2.范围41.3.适用对象41.4.参考资料42.构架目标和约束43.业务分析43.1.概述43.2.业务主流程54.模块划分54.1.主要模块54.2.工程划分54.3.逻辑分层55.架构设计65.1.总体结构65.1.1.概述65.1.2.开发框架75.1.3.技术特性75.1.4.技术风险75.2.基础设施75.2.1.异步框架75.2.2.日志框架85.2.3.多线程85.3.系统设计:核心业务设计85.3.1.周期性计费划价流程85.3.2.非周期性计费划价流程95.3.3.各种维度计费统计105.3.4.出账和服务控制流程115.4.系统设计:详细业务设计115.4.1.领域模型125.4.2.数据采集类图125.4.3.订单收集时序图135.4.4.实时业务数据采集时序图145.4.5.数据筛选分析类图155.4.6.数据筛选分析时序图155.4.7.实时性批价类图165.4.8.实时性批价时序图175.4.9.周期性批价类图185.4.10.周期性批价时序图195.4.11.计费汇总类图195.4.12.计费汇总时序图205.4.13.帐务管理类图215.4.14.出帐时序图225.4.15.服务控制类图235.4.16.固定帐期服务控制时序图245.4.17.帐期之外扣款触发服务控制时序图245.5.系统设计:系统边界接口255.5.1.收费产品原始数据采集255.5.2.订单开通业务255.5.3.订单状态变化通知接口265.5.4.批价接口265.5.5.计费系统反馈客户账务欠费状态接口275.5.6.扣款接口275.5.7.扣款状态回调接口285.5.8.PC2授权用户数接口285.6.系统设计:数据ER图296.服务器部署307.其它307.1.规模分析(可选)307.2.性能分析及实现(可选)307.3.质量的达成(可选)308.附录(术语)301.简介1.1.目的此文档通过对计费中心总体的业务架构建模,描述了计费中心整体业务架构设计蓝图,对后续的设计和开发提供指导和参照。1.2.范围本文档主要涉及计费中心的总体业务架构设计及系统中各个业务模块的架构设计。1.3.适用对象本文档适用于:产品设计师:根据本文档中描述的架构模型评估需求满足度;开发工程师:参照本文档和详细设计文档进行开发。1.4.参考资料此软件架构设计参考计费系统需求及相关业务文档,如下所示:《ITBU业务支撑系统规划V1.0.pptx》《计费系统UC文档》2.构架目标和约束本文档从全局的角度出发描述了计费系统的总体业务架构,打造一个高性能、高稳定性计费平台。3.业务分析3.1.概述目前支持计费模式:1、支持非实时按次计费的后付费业务2、支持按天计费的后付费业务3、支持按天/最大账号数计费的后付费业务(按每份订单每天授权过的最大账号数计费)4、支持首次开通N天(首次使用N次)免费的计费策略5、支持同一份订单同一天内暂停恢复多次仅按一天计费(多份订单时按每份订单单独计费,即使同一天内退订再开通,按多份订单计费。)6、支持用户使用时按实际付费者收费(老板订购,业务员使用或邀请业务)7、支持按设定的日期出账业务8、支持欠费自动停止欠费服务9、支持充值销账后自动开通销账成功客户的服务3.2.业务主流程​�<职能>���<进程名称>���计费系统业务流程图业务系统PC2系统订单系统账务系统计费系统计费获取使用数据生成原始使用数据生成月扣款单原始使用数据�订单数据数据订单通知计费系统获取订单数据计费明细产品中心批价PC2服务控制数据收集服务账单扣款状态处理周期计费数据分析服务计费汇总Task根据客户生成汇总数据定期扣款扣款通知扣款状态根据价格策略生成批价参数�Task定期扣款生成周期性计费数据账务服务​4.模块划分4.1.主要模块子系统功能模块数据采集数据分析账务管理4.2.工程划分略4.3.逻辑分层略5.架构设计5.1.总体结构​数据�数据采集服务计费分析服务账单处理服务PC2系统账务系统外贸E网打进钱掌柜诚信通。。。计费系统架构图任务框架异步框架订单系统CRM系统日志框架监控框架​5.1.1.概述本系统设计以覆盖阿里巴巴所有SaaS业务为目标,根据不收费模式(预付费、后付费)进行计费。作为一项复杂、技术含量高的项目,SaaS业务实时计费结算系统设计时从技术和系统设计角度看,应遵循以下原则:开放性基于统一UDB用户体系,保证系统之间交互接口支持多种访问协议,满足多个业务产品线的业务模式。可扩充性系统要有良好的可扩充性。从总体结构到具体硬件设备,都要给将来业务的新技术新产品预留接口,以便进行平滑地升级和资源扩充。容错性和可靠性实时计费网络应用,对系统的可靠性要求极高,关键主机系统不允许停机发布应用。这就需要采取各种容错技术以确保系统正常工作,如不停机发布版本等,但是在硬件设备也需要相应的支持,如双机热备、备份电源等技术保证服务器不出现停机故障。安全性在保证高可用性的同时,要有各种措施工具防止对数据的非法访问和篡改,口令就是一种行之有效的工具。网络支撑环境也应有相应的安全性机制如网络管理员权限,各种网络设备配置权限等。5.1.2.开发框架相关框架开发框架Webwork+Spring+Ibatis接口发布访问协议Hessian项目构建管理Maven数据库Oracle运行环境Jboss-4.2.1.GA开发工具Eclipse5.1.3.技术特性技术特性概述数据异步处理为处理失败的数据提供自动重试等相关策略日志详细跟踪异常定位多任务精确统计数据解决多任务中出现重复统计、遗漏统计等问历史表数据存储通过数据迁移保证上亿级数据存储和高效检索分区数据存储通过数据迁移保证上亿级数据存储和高效检索5.1.4.技术风险1、异步处理数据准确性。2、支持上百万用户的计费能力。3、系统间联调、集成风险。5.2.基础设施5.2.1.异步框架​基于Spring打造简单高效通用的异步任务处理系统背景随着应用系统功能的不断新增,而某些功能的实现对实时性要求并不是那么高,但是逻辑却很复杂、执行比较耗时,比如涉及外部系统调用、多数据源等等;此时,我们就希望可以让这些复杂的业务逻辑放在后台执行,而前台与用户的交互可以不用等待,从而提高用户体验;另外,从系统架构这个层面来说,我们也希望按照不同功能来拆分,以保持各个系统之间的低耦合,当一个系统出现问题时不会影响到其他系统,并且对于独立的各个系统,我们可以专门进行性能优化、监控等;所以我们需要通用、高效的异步任务处理系统;设计目标打造轻量级、简单、高效、通用、高扩展性、高可靠性的异步任务处理系统!系统设计要实现类似的异步处理系统,相信大家首先想到的就是JMS,Alibaba里面也有基于JMS的异步处理系统,而且该系统在网店系统中应用非常广泛;但由于目前我们阿里软件采用了不同的技术框架,所以不能直接拿来使用;况且,该系统为了实现异步任务系统的并发,采取了JMS与MDB结合的策略,所以系统就依赖于EJB了,这样系统就变得笨重了,由此系统部署的应用服务器必须要支持EJB,一些轻量级的不支持EJB规范的应用服务器就没法部署了;考虑到如上的系统设计目标,我们的设计思路为:任务DB持久化+Spring封装Job调度、线程池;任务DB持久化:是说我们需要将待处理的任务信息保存在我们可信任的DB中,若任务未到达千万级可以和业务DB放在一起,确保当我们的任务处理服务器down了之后这些未执行成功、或未开始执行的任务不会被丢失;Spring封装Job调度:当任务信息都持久化在DB中之后,我们需要将这些信息读取出来执行具体的业务逻辑操作,这里我们通过ScheduledExecutorFactoryBean来实现对任务的循环调度,比如说可采取每隔5min扫描一次待处理任务列表,若有则提取出来执行;当然,若要实现更加强大的任务调度功能,可以采用Spring内部集成的Quartz这个开源调度框架;Spring封装线程池:为了提高任务执行效率,我们必须考虑让任务的具体操作能够被并发执行;为了让系统更加轻量级,这里我们直接采用Spring中基于JDK线程池的默认封装实现,通过配置调整参数;系统的部署图可参考下图:下面我们来看以下具体的系统设计:首先,需要新建两张表,用来持久化我们的任务相关信息,以下表结构及其SQL都基于Oracle;表名可自取,比如Tasks/Tasks_Fail_History,两者的字段完全一样,字段建议包括:字段类型描述可空默认值TASK_IDVARCHAR2(36)@descPK,唯一标识即可,默认是UUIDNOTGMT_CREATEDATE@desc创建日期NOTGMT_HANDLEDATE@desc任务待执行日期NOTTASK_HANDLERVARCHAR2(32)@desc待执行任务类型NOTLOAD_BALANCE_NUMNUMBER@desc待执行任务获取的负载均衡值,当有多台服务器时用于平衡各服务器压力NOT0TASK_PARAMSVARCHAR2(4000)@desc待执行任务需要的参数NULLRETRY_COUNTNUMBER@desc重试次数,每次加1NOT0RETRY_REASONVARCHAR2(512)@desc重试原因,即上次失败原因,便于排错NULL表Tasks主要用来保存所有待执行的任务,每条任务信息属于一种任务类型,由TASK_HANDLER字段标识,因为本系统核心基于Spring,所以任务类型的值建议为:该类型任务的具体实现类在Spring容器中的beanid;执行该任务需要的所有参数都由TASK_PARAMS字段提供,该字段内的字符串可以由应用自行组装,只要具体任务实现类能够解析即可;对于字段LOAD_BALANCE_NUM,主要是用来满足未来任务很多时,需要多台服务器来平衡压力时使用,相当于对每条任务分配了一个负载均衡值,不同服务器能够处理具有不同负载均衡值的任务信息;该字段值要求在全表内尽量平均分布,比如说全表内共500条记录,其中1、2、……、10每个值的任务总条数都在50条左右;每条任务被执行之后根据执行情况进行删除或者更新操作;表Tasks_Fail_History主要用来保存执行失败、需要人工干预的任务记录;记录来源于Tasks表,当任务执行重试超过一定次数时任务记录就会保存到失败历史表中;其次,我们要明确任务生产者、消费者各自关注的一些信息:对于任务的生产者,他需要提供的必备信息包括:任务待执行日期、任务类型、任务执行所需参数;另外一个可选字段:LOAD_BALANCE_NUM;当任务的消费者有多台服务器时,可以利用该字段来进行分布式任务处理,此时可以根据一定规则对该字段设值,比如说产生一个1-10之间的随机数;或者根据其他自行设计的规则生成一个值,只要保持该字段值是在全表内平均分布的即可;对于任务的消费者,大致的消费过程如下:下面对上图中的各个过程中具体逻辑进行一些详细描述:当消费者服务启动之后,会根据配置好的调度策略(通过Spring内置的ScheduledExecutorFactoryBean实现,可以选择两种调度策略:其一:FixedRate,即每隔几分钟调度一次,而不管上次调度是否已经执行完毕;其二:FixedDelay,即在每次调度完成后都delay相同时间;)扫描Tasks表,从中取出xx条数据,比如1000,可配置;基本SQL语句为:SELECT*FROMtasksWHEREgmt_handle<=SYSDATE;当然根据扩展策略不同,每次扫描Tasks表的查询条件也不同,比如:当待执行任务类型较少,任务数量也不是很多的情况下,单台服务器已经可以搞定,所以查询SQL为:SELECT*FROMtasksWHEREgmt_handle<=SYSDATEANDROWNUM<=?;当任务类型、任务数量越来越多时,单台服务器已经不能搞定了,此时我们需要考虑对消费者服务器进行线性扩展,此时有不同的扩展策略可供选择:若按功能水平扩展的策略,即将不同的任务类型让不同的消费者服务器执行;则查询SQL条件为:WHEREgmt_handle<=SYSDATEANDtask_handlerIN(?)ANDROWNUM<=?;若按压力水平扩展的策略,即尽量保持各台消费者服务器的压力很平均,避免出现某些服务器很繁忙,而有些服务器却很空闲的情况;前面的按功能水平扩展的策略就会出现服务器繁忙程度不一样的问题;若采取这种策略,每台消费者服务器可能会处理多种类型的任务,此时SQL查询条件为:WHEREgmt_handle<=SYSDATEANDload_balance_numIN(?)ANDROWNUM<=?;除了根据上面两个独立维度进行扩展的策略之后,还可以将两者进行结合起来使用;可适用于我们想按照功能进行水平扩展,但是某些任务类型单台服务器又搞不定,此时就需要对这些特殊任务类型再按照压力进行水平扩展,此时SQL查询条件为:WHEREgmt_handle<=SYSDATEANDtask_handlerIN(?)ANDload_balance_numIN(?)ANDROWNUM<=?;对于以上任务的查询SQL中有用IN这个关键词,有人可能会担心查询性能,其实不必担心,因为我们处理的任务类型、任务服务器数量都不会太多,几百个任务类型估计最多了,而且IN语句的查询也是会用到index的,再以ROWNUM的辅助限制条件,所以SQL的执行效率不用担心;另外,若任务类型较少,则SQL中的IN可用=替换;对从DB中查询出来的每条记录,将该条记录的ID放进本地cache(static变量即可搞定,但要处理并发)中,根据记录中TASK_HANDLER字段的值在Spring容器中找到对应的处理类bean实例,并扔到Spring异步线程池中执行;具体处理类对该任务处理完成之后返回结果,然后任务系统根据返回结果对该条记录对应的Tasks表中的记录进行更新(增加重试次数,并根据重试策略设置下次执行时间)或者删除(执行成功);同时将cache中的记录ID清除、避免cache无限膨胀;根据调度规则,当到了下次执行时间时,再次利用步骤1中的规则扫描Tasks表,循环上面的处理逻辑,差别在于,在将任务让具体TASK_Handler处理之前会先到本地cache中查询是否该条记录正在被处理,若cache中已经存在该条记录就无需处理了;这主要是为了避免一些比较耗时的任务被重复并发执行;对于失败后的重试,设置重试策略,每次可delay不同的时间,可配置;比如第一次失败后1分钟后重试,第二次失败后5分钟后重试,第三次失败后20分钟后重试。。。失败超过x次后将记录移至history表中,并email报警;详细设计针对以上的系统设计,我们可以规划出大致的类图,可以参考如下实现:其中类图中涉及到的几个核心class的用途说明可以参考如下的Spring配置信息:是否达成设计目标?轻量:核心实现完全基于Spring、Dao层完全可以自行决定采取何种框架;可以部署于任何Web容器中;这也是相对于JMS系统最大的改进;简单:对于任务的生产者,只需要向Tasks表中insert记录即可,无需引入任何其他通讯协议;对于任务的消费者而言,因为系统只依赖于Spring,所以要想将该系统与目前已有系统进行集成将会非常简单:引入jar包,将Ibatis、Spring配置文件加入到自己系统的加载列表中即可;另外,任务的调度策略设置基于SpringSchedual,配置文件相对于Quartz来说更少;高效:若采取FixedRate调度方式,系统的处理能力可以被准确计算;比如每1min提取1000条数据,那么1天单台服务器的处理能力为144w;当然需要考虑每个任务的具体耗时,因为1min内系统不一定能将1000条数据处理完毕;若采取FixedDelay调度方式,系统的处理能力就完全基于任务的具体执行耗时了,因为当该种调度方式设置每次调度完成之后delay1s,其实就相当于系统一直在处理任务,这样就可以最大化的保持系统的利用率;可能有人会怀疑多台消费者服务器都对TASKS表进行查询会不会有性能问题?其实经过我们的系统运行经验,该问题是不存在的,因为该表的记录当执行成功之后就会被删除的,所以该表的数据量不会太大,除非消费者服务大面积down掉,但这是极少数情况,当出现这种情况时,当消费者服务再次启动时系统会有一定压力,但也不会太大,因为每次查询待执行任务时是取前XX条的,况且可以建立index来进行辅助;通用:该系统只实现最核心的异步处理功能,而与具体业务逻辑没有任何关系,系统根据TASK_HANDLER去加载具体的业务逻辑实现;具体的Handler实现只需实现对应接口,并在Spring中添加bean配置即可;扩展:根据TASKS表中的TASK_HANDLER/LOAD_BALANCE_NUM中任意一个字段、或者两者组合的方式可以实现分布式线性扩展,他们分别对应于两种不同的分布式线性扩展策略;而这对于客户端而言是完全透明的,任务生产者插入时只需配置不同策略而已;而且可以通过合理使用这两种策略达到新增任务类型时已经在运行的消费者服务无需重新发布;可靠:由于待执行任务信息是在我们自行维护的可靠DB中保存,所以当我们的消费者服务down了也不会让未处理的任务信息丢失,相比于基于JMSServer的一些内存数据库定时持久化方案,与业务DB的稳定性相比,在可靠性方面不是一个级别的;作者:唐益鹏,阿里软件研发中心集市技术部架构师,目前负责Saas平台前端用户相关的基础设施架构设计;博客:http://blog.csdn.net/sfdev​5.2.2.日志框架5.2.3.多线程5.3.系统设计:核心业务设计5.3.1.周期性计费划价流程5.3.2.非周期性计费划价流程5.3.3.各种维度计费统计5.3.4.出账和服务控制流程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.实时性批价类图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属性表述名称类型说明usernameString当前使用者名称userIdString当前使用者用户IDpayerMemIdString付款账户人memId,productNameString产品名称productIdString产品IdstartDateDate开始日期endDateDate结束日期AmountBigDemail(特殊业务)不需要批价useAgeBigDemail使用量useUnitString使用量单位返回值:名称类型说明resultString1:表示成功-1:表示参数错误5.5.2.订单开通业务调用形式:Hessian接口名称:installOrder描述:当订单系统生成一条新的订单行记录时,通知定计费系统接口参数:名称类型说明OrderObject计费系统中订单行镜像Order属性名称类型说明orderedString订单行号ordercodeString订单codecustIdString客户IDbillingTypeString(次/年/月)productIdString产品IDStatusString状态productStrategyIdString促销策略IdstartDateDate开通日期specConditionString特征值isQuotaString是否按配额计算payerMemIdString付款人网站ID返回值:名称类型说明resultString1:表示成功-1:表示参数错误5.5.3.订单状态变化通知接口调用形式:Hessian接口名称:updateOrderState描述:当订单状态发生变化,订单系统通知计费系统中订单镜像做同步接口参数:名称类型说明ordereIdString对应订单系统中订单行号StateString状态返回值:名称类型说明resultString1:表示成功-1:表示参数错误5.5.4.批价接口调用形式:Hessian接口名称:getTotalPrice描述:进行批价接口参数:名称类型说明productKeyString产品项IdfeatureListHashMap特征值measureUnitsString计量单位(年月日)为空时表示单位是个countBigDecimal购买数量不能为空或0CurrencyString币种,不能为空返回值:名称类型说明EsbResultModelorg.mule.esb.model.tcc.result.EsbResultModel返回产品总价model.getReturnValue():BigDecimal()-1:系统异常,调用失败。-2:表示验证通过但未激活-3:登录名不存在-4:校验失败;验证成功:返回用户ID5.5.5.计费系统反馈客户账务欠费状态接口调用形式:Hessian接口名称:feedbackUser描述:反馈用户账务信息接口参数:名称类型说明payerMemIdString付款人Id返回值:名称类型说明ResultString改用户账务情况1:未欠费-1:已欠费5.5.6.扣款接口调用形式:Hessian接口名称:chargeAccount(具体接口名账户系统订)描述:账期内出账接口参数:名称类型说明InvoiceObject出账单Invoice属性名称类型说明guidString主键custIdString客户IdcustNameString客户名称payerMemIdString付款人IdtotalAmountBigDecimal总金额rmbAmountBigDecimal人民币总金额twbAmountBigDecimal台币总金额usdollarAmountBigDecimal美元总金额gbAmountBigDecimal港币总金额ItemList扣款明细InvoiceItem属性表述返回值:名称类型说明guidString主键productIdString产品项IdproductNameString产品项名称orderCodeString订单行CnyString币种AmountBigDecimal金额markAmountBigDecimal标价金额名称类型说明ResultString发送成功发送失败5.5.7.扣款状态回调接口调用形式:Hessian接口名称:payCallback描述:账务系统扣费成功回调计费系统扣费成功通知接口参数:名称类型说明invoiceIdString计费系统账单IdstateString付费情况返回值:名称类型说明ResultString1:扣费成功5.5.8.PC2授权用户数接口调用形式:Hessian接口名称:changeAccountNum描述:PC2改变授权用户数接口接口参数:名称类型说明mmIdString付费用户IdcurrentNumInt当前使用量productCodeString产品code返回值:名称类型说明ResultString1:更新成功5.6.系统设计:数据ER图​SybasePowerDesignerPhysicalDataModelReportModel:计费中心Report:billingAuthor:xiaodan.daixdVersion:Date:2009-11-5Summary:TableofContentsThe'TableofContents'fieldneedstobeupdated!IIntroduction1.1Description1.2模型计费中心的卡片名称计费中心代码计费中心数据库管理系统ORACLEVersion9i注释数据库II简单模型描述2.1图清单名称代码PhysicalDiagram_1PhysicalDiagram_12.2图PhysicalDiagram_12.3表格清单名称代码产品使用信息搜集表billing_collect产品计费明细表billing_amount_item产品计费汇总表billing_amount_summary产品计费统计表billing_statistic扣款表billing_invoice服务开通事件表billing_service_event订单信息表billing_orderIII完全模型描述3.1图清单名称代码PhysicalDiagram_1PhysicalDiagram_13.2图PhysicalDiagram_13.3Listoftables名称代码产品使用信息搜集表billing_collect产品计费明细表billing_amount_item产品计费汇总表billing_amount_summary产品计费统计表billing_statistic扣款表billing_invoice服务开通事件表billing_service_event订单信息表billing_order3.3.1表格产品使用信息搜集表3.3.1.1表格产品使用信息搜集表的卡片名称产品使用信息搜集表代码billing_collect3.3.1.2表格产品使用信息搜集表的服务器检验表达式%RULES%3.3.1.3表格产品使用信息搜集表的约束名称CKT_BILLING_COLLECT3.3.1.4表格产品使用信息搜集表的列清单名称代码主键guidvaccountvaccount产品Codeproduct_code产品名称product_name使用者IDuser_id使用者姓名user_name开始时间startTime结束时间endTime使用量usage使用量单位usage_unit金额amount批价状态is_charge创建时间gmt_create修改时间gmt_modified3.3.1.5表格产品使用信息搜集表的键清单名称代码主要的Key_1Key_1TRUE3.3.2表格产品计费明细表3.3.2.1表格产品计费明细表的卡片名称产品计费明细表代码billing_amount_item3.3.2.2表格产品计费明细表的服务器检验表达式%RULES%3.3.2.3表格产品计费明细表的约束名称CKT_BILLING_AMOUNT_ITEM3.3.2.4表格产品计费明细表的列清单名称代码主键guidvaccountvaccount使用者姓名use_name用户IDuse_id产品Codeproduct_code产品名称product_name价格策略IDproduct_strategy_id批价参数charge_params使用量usage使用量单位usage_unit计费单位account_unit计费日期account_date金额amount创建时间gmt_create修改时间gmt_modified是否已划价is_charged3.3.2.5表格产品计费明细表的键清单名称代码主要的Key_1Key_1TRUE3.3.3表格产品计费汇总表3.3.3.1表格产品计费汇总表的卡片名称产品计费汇总表代码billing_amount_summary3.3.3.2表格产品计费汇总表的服务器检验表达式%RULES%3.3.3.3表格产品计费汇总表的约束名称CKT_BILLING_AMOUNT_SUMMARY3.3.3.4表格产品计费汇总表的列清单名称代码主键guidvaccountvaccount扣款单IDinvoice_id产品codeproduct_code产品名称product_name订单codeorder_code订单idorder_id金额amount币种currency创建时间gmt_create修改时间gmt_modified原始价格src_amount3.3.3.5表格产品计费汇总表的键清单名称代码主要的Key_1Key_1TRUE3.3.4表格产品计费统计表3.3.4.1表格产品计费统计表的卡片名称产品计费统计表代码billing_statistic3.3.4.2表格产品计费统计表的服务器检验表达式%RULES%3.3.4.3表格产品计费统计表的约束名称CKT_BILLING_STATISTIC3.3.4.4表格产品计费统计表的列清单名称代码主键IDguidvaccountvaccount用户IDuser_id产品Codeproduct_code总使用量usage统计类型stat_type计费日期account_date创建时间gmt_create修改时间gmt_modified3.3.4.5表格产品计费统计表的键清单名称代码主要的Key_1Key_1TRUE3.3.5表格扣款表3.3.5.1表格扣款表的卡片名称扣款表代码billing_invoice3.3.5.2表格扣款表的服务器检验表达式%RULES%3.3.5.3表格扣款表的约束名称CKT_BILLING_INVOICE3.3.5.4表格扣款表的列清单名称代码主键guidvaccountvaccount人民币金额rmb_amount日元金额jpy_amount美元金额usd_amount港币金额hkd_amount扣款状态status是否通知服务控制is_ctrl扣款时间paybill_time创建时间gmt_create修改时间gmt_modified3.3.6表格服务开通事件表3.3.6.1表格服务开通事件表的卡片名称服务开通事件表代码billing_service_event3.3.6.2表格服务开通事件表的服务器检验表达式%RULES%3.3.6.3表格服务开通事件表的约束名称CKT_BILLING_SERVICE_EVENT3.3.6.4表格服务开通事件表的列清单名称代码主键guidvaccountvaccount产品codeproduct_code订单IDorder_id状态status事件发生时间event_time3.3.6.5表格服务开通事件表的键清单名称代码主要的Key_1Key_1TRUE3.3.7表格订单信息表3.3.7.1表格订单信息表的卡片名称订单信息表代码billing_order3.3.7.2表格订单信息表的服务器检验表达式%RULES%3.3.7.3表格订单信息表的约束名称CKT_BILLING_ORDER3.3.7.4表格订单信息表的列清单名称代码订单IDorder_idvaccountvaccount产品IDproduct_id产品名称product_code订单codeorder_code价格策略IDproduct_strategy_id计价单位account_unit是否按配额计算is_quota订单状态status计费状态charge_status计费状态变更时间change_time创建时间gmt_create修改时间gmt_modified开始时间start_time结束时间end_time3.3.7.5表格订单信息表的键清单名称代码主要的Key_1Key_1TRUE​6.服务器部署略7.其它7.1.规模分析(可选)略7.2.性能分析及实现(可选)略7.3.质量的达成(可选)略8.附录(术语)英文中文说明收集订单生产计费事件批价汇总订单系统产品系统产生计费明细计费明细表计费汇总表计费系统订单镜像表计费事件表轮询批价(每日)生成订单镜像产生计费汇总ActionDataOtherSystem各种维度的计费统计值原始消费信息临时表轮询Task数据筛选批价汇总业务系统产品系统产生计费明细计费明细表计费汇总表按用户操作触发计费系统各种维度的计费统计值批价获取原始消费信息产生计费汇总ActionDataOtherSystem原始消费信息临时表轮询Task数据筛选业务系统PC2按用户操作触发计费系统各种维度的计费统计值产生计费统计获取原始消费信息ActionDataOtherSystem帐号数账户系统出帐触发服务控制计费汇总表计费系统PC2帐期定时、手工、阀值账单汇总表扣费成功财务系统出帐期计费事件表开通或关闭通知更改账单状态ActionDataOtherSystem是否超过帐期阀值超过帐期阀值帐期阀值日触发产生计费事件订单镜像更改订单状态PAGE/NUMPAGES
/
本文档为【(精心整理)计费中心+-+计费系统架构设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索