cpweb-详细设计-开放广告平台计费相关_第1页
cpweb-详细设计-开放广告平台计费相关_第2页
cpweb-详细设计-开放广告平台计费相关_第3页
cpweb-详细设计-开放广告平台计费相关_第4页
cpweb-详细设计-开放广告平台计费相关_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

开放平台详设文 设计文档满足的条件 设计文档内容 背 设计目 模块限 sql语句与过程设计及说明(可选) 模块设 Java-API接口调 初始换环境函 构造函 DAS传输设 从计费获取DSP账户消费汇总数 异常处 测试考 设计文档满足的条件设计文档内容1背DSP开放平台需要获取上游计费模块的扣费数据。实时的消费数据比定时抓取方案更优,因此需要将dsp的计费日志已经通过Logagent上传到BIGPIPE集群,业务端通过实现一个订阅程序,实时的BIGPIPE集群获取计费日志,并完成扣费逻辑、历史记录、日志记录等功能。中间能力。实例中传输,每个Pipe实例由一个Pipename标识,这也是发布者和订阅者操作对应类型数据时使Pipelet:pipelet是子通道,一个pipe可以分个pipelet,Pipe按照用户设置的规则划分个pipeletpipelet由一个pipeletid标识在发布时会按照划分规则自动进入相应的pipelet,pipeletpipelet为单位进行订阅。设计目实现的功订阅程序(subDSPLog)实时的从bigpipe根据扣费后的余额,修改DSPDAS设计的性能指实时性主要依赖Bigpipe,数据实时性延迟约100ms,而DSP能延迟约5min。系统环境(可选假设及与其它模块联相关软件及硬Bigpipe是一个分布式数据传输系统。不仅可以完成传统消息队列可以实现的诸如消息、命令的实Bigpipeinf-ds的transfer组同学推广和开发。ZooKeeperBigpipeCache模块限数据规模估数据库设数据库表结构设计及说one_cost.cost_20130415(DSP点击消费表列类备int(10)int(10)dspid,计费日志根据dspid计价(千分之一分)1000001.01数据库数据量评估及说明(可选sql语句与过程设计及说明(可选)模块设设计思路与折计费数据接口格bigpipedispatcherbigpipepipelet,日id在每个pipelet中独立且有序递增。dsp_id合并,字段以\tdspdspid本条日志的时间戳,格式为戳式为戳式为dsp_id0,cost、starttime、endtime0数据接收与.2模块流程图时序图及说tasklettasklet打印日志、写入tasklet打印日志、写入tasklettasklet初始化,连接收数.打印日志、打印日志、写入DSP打印流水日tasklettasklet订阅客户端程序总体设计见上图。订阅程序开启多个线程(tasklet)tasklet线程负pipelettasklet订阅的数据放入全局队列(数据库)中,并标记状态为待处理,taskprocess线程会从队列取数据,然后进行计费逻辑的处理,处理完毕之后,将标记位设置为已处数据结构及说Java-API接口调概Bigpipe-Java-API(由一个同步发送类,和一个同步订阅类组成),JNIC++原linux环境使用。计费同时有多个发布端往同一个pipe的多个pipeletpipelet里的数据局部有序,pipelet顺序一致,但全局无序,即不同发布端发送的数据之间不存在pipe的pipelet。相互独立,不具备queue主要调用方概述:bigpipe-java-apiBigpipePublisherBigpipeSubscriber初始换环境/ Bigpipe-java-apiapi@param[in]stringcfg_pathlog@param[in]Stringcfg_filelog*publicsynchronizedstaticvoidinit(Stringcfg_pathStringcfg_file)throwsBigpipeExceptionBigpipe-Java-APIcomlog打印日志,用户可以在log配置文件里进行相关配置。log配置文件不存在、log配置文件错误、libbigpipe_jni_api.so概述:同步订阅类,用于订阅某个pipelet构造函*@brief*publicvoid@brief*@paramin]pipeNamepipe@paramin]token@paramin]pipeletId订阅的@paramin]startPoint@paramin]seq@paramin]cfgPath@paramin]cfgFile@paramin]rangFile@param[in]exPersistPath持久 附加@paramin]apiRoleapipublicvoidinit(StringpipeName,Stringtoken,intpipeletId,longstartPoint,longseq,StringcfgPath,StringcfgFile,StringStringexPersistPathintapiRole)throwsBigpipeExceptionpublicintgetPipeletNum()throws@brief获取订阅的pipelet@returnpublicintgetPipeletId()throwspublicvoidconnect()throws@brief断开连 publicvoiddisconnect()throws@brief@paramin]timeo_ms超时时间@returntrue为有数据,falsepublicbooleanpeek(longtimeo_ms)throwsBigpipeException注意:发送超时单位为当Timo_ms为负数时将会抛出异常Peek过程中如果订阅端出错,如长期订阅不到数据(可以把配置文件中failover次数设置@brief@return返回RecvNode结构,消息以及附加信publicBigpipeRecvNodereceive()throwsByte[_msgInt_msgLen_msg.lengthLong_pipeletMsgIdLong_seqId该消息在pipeletMsgId在对应的SeqId,对于java发布端发布的消息,该值必是Long_seqId该消息在pipeletMsgId中是不是最后一个seqId,对于java发布端发布的消息值必定@briefpublicvoid算法描述(可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论