一种实时竞价系统中广告投放的方法及系统与流程

文档序号:11253888阅读:1655来源:国知局

本发明涉及广告的实时竞价领域,特别是一种实时竞价系统中广告投放的方法及系统。



背景技术:

rtb(realtimebidding,实时竞价)是一种利用第三方技术在数以百万计的网站或移动端,针对每一个用户展示行为进行评估以及出价的竞价技术。其类似股票交易市场,卖方买方都到一个市场中进行交易。卖方通过程序化的方式将广告流量接入到广告交易平台中,并设定底价,每当一个用户浏览媒体内容页时,其中有广告位需要展示广告,此时卖方(ssp)将该广告曝光机会通过广告交易平台(adx)向各程序化买家(dsp)发起竞价请求,各程序化买家根据对该广告曝光机会的评估背对背出价,广告交易平台收到各个程序化买家的出价后,通过比价找出出价最高的买家,将出价最高的广告素材给到媒体进行展示,同时将竞价成功的结果返回到胜出的程序化买家。

adx向各个dsp发起dsp请求(广告请求)的主要步骤是:1)向dsp发送请求;2)等待dsp返回,直到等待超时;3)处理dsp的返回。整个请求过程中存在同一个dsp请求要同时发送至多个dsp的情况,也会存在dsp请求要在较短时间内(毫秒及以下级别)发送至dsp的情况。同时,为了方便系统监控和数据处理等,要对各个dsp的状态(包括但不局限于请求,超时,出价,竞价,异常等)进行有效的追踪。鉴于以上业务的复杂性,对实时竞价系统的高并发性,时效性,稳定性提出了很高的要求,现有的方案已无法满足这些要求。

在rtb广告中,adx如何控制dsp的流量,如何实时的向dsp请求广告,如何控制各个dsp不同时返回广告或者返回广告超时的问题是一些常见的问题。rtb中adx向dsp请求广告,我们总结得出有以下特征:

1)dsp请求的实时性。adx在收到外部dsp请求的时候,为了保证不会影响原有的用户体验,一次完整的rtb广告时延一般限制在100毫秒级别,adx向dsp请求广告作为其中的一个重要环节,需要更短的时延。

2)dsp流量的可控性。adx向dsp发送的请求,不一定是全部的流量,在dsp不接受全部流量或者adx与dsp进行小流量测试等场景下,需要能够根据实际情况,对发送至dsp的流量进行相对精准的调节与控制。

3)dsp请求耗时可控性。adx向多个dsp发送dsp请求,但是无法保证各个dsp返回广告数据耗时的一致性。为了不使耗时较长的dsp拖慢整个广告处理的进程,需要对整个请求过程进行超时处理,当dsp未在限制时间内返回数据,则不会继续等待其返回。

adx请求dsp的过程具有的上述特征,是考虑adx请求dsp过程时,需要重点考虑的问题。



技术实现要素:

本发明旨在提供一种实时竞价系统中广告投放的方法及系统,降低系统资源消耗,提高dsp请求效率。

为解决上述技术问题,本发明所采用的技术方案是:一种实时竞价系统中广告投放的方法,其特征在于,包括以下步骤:

1)ssp发送ssp请求到adx;其中,adx为广告交易平台;ssp为卖方;

2)adx根据ssp请求生成符合adx协议的dsp请求,并筛选出处于激活状态且余额大于零的dsp,形成可发送dsp列表;其中,dsp为程序化买家;

3)对于步骤2)生成的dsp列表中的任一dsp,判断该dsp是否命中步骤2)中的dsp请求,如果未命中,将不向该dsp发送该dsp请求;如果命中,则将该dsp请求加入该dsp的待发送队列;

4)获取上述dsp的待发送队列中的dsp请求,从该dsp的连接池中获取在服务启动时已经完成初始化的连接,向该dsp发送dsp请求;

5)对步骤2)中dsp列表的每个dsp重复上述步骤3)~步骤4),待全部发送完之后进入等待过程,直到所有已发送请求的dsp在预先设定的超时时间内都返回了广告内容,或者达到该次dsp请求的超时时间;

6)处理dsp返回的广告内容,通过竞价之后,返回出价最高的dsp的广告内容并曝光。

进一步地,上述步骤3)的具体实现过程包括:adx中设定第i个dsp对应的流量比例为pi,如果pi=0,则不发送dsp请求;如果pi=100,则发送dsp请求;否则生成一个0到100之间的随机数ti,如果ti≤pi,则发送dsp请求;否则,不发送dsp请求;如果判断dsp请求要发送给第i个dsp,则将该dsp请求加入到第i个dsp的待发送队列。流量比例介于0到1之间。各个dsp拥有各自的连接池进行连接复用,有效的降低了系统资源消耗,提高了dsp请求效率。

相应地,为实现上述目的,本发明还提供了一种实时竞价系统中广告投放的系统,其包括:

ssp:用于发送ssp请求到adx;

adx:用于根据ssp请求生成符合adx协议的dsp请求,并筛选出符合条件的dsp,形成可发送dsp列表,然后判断所述dsp列表中的某一dsp是否命中上述dsp请求,如果未命中,将不向该dsp发送dsp请求;如果命中,则将dsp请求加入该dsp的待发送队列,并获取该dsp的待发送队列中的dsp请求,从该dsp的连接池中获取连接,向该dsp发送dsp请求;等待dsp返回广告内容,直到所有已请求dsp在超时时间内都返回了广告内容,或者达到该次dsp请求的超时时间,处理dsp返回的广告内容,通过竞价之后,返回出价最高的dsp的广告内容;

dsp:用于接收dsp请求和返回广告内容。

相应的,ssp还用于曝光出价最高的dsp的广告内容。

上述adx包括:

dsp列表生成单元:用于根据ssp请求生成符合adx协议的dsp请求,并筛选出符合条件的dsp,形成可发送dsp列表;

流量控制单元:用于判断所述dsp列表中的某一dsp是否命中dsp请求,如果未命中,将不向该dsp发送dsp请求;如果命中,则将dsp请求加入该dsp的待发送队列,并获取该dsp的待发送队列中的dsp请求,从该dsp的连接池中获取连接,向该dsp发送dsp请求;

第一处理单元:用于等待dsp返回的dsp请求内容,直到所有已请求dsp在超时时间内都返回了广告内容,或者达到该次dsp请求的超时时间;

第二处理单元:用于处理dsp返回的广告内容,通过竞价之后,返回出价最高的dsp的广告内容。

与现有技术相比,本发明所具有的有益效果为:本发明能够有效控制不同dsp的流量,从而控制一个dsp请求的整体耗时,各个dsp拥有各自的连接池进行连接复用,有效的降低了系统资源消耗,提高了dsp请求效率;同时,通过本发明的投放方法,可以对各个dsp的流量进行有效的控制,在遇到由于网络不稳定,dsp服务故障等原因导致大量超时的情况下,调整dsp的流量范围,从而保证整个adx的服务的稳定性。

附图说明

图1为本发明方法流程图。

具体实施方式

如图1,本发明提出的在rtb过程中,adx向dsp发送竞价dsp请求,主要包含如下步骤:

1.某一个ssp发送广告请求rssp到adx;

2.adx根据rtb协议,将ssp请求转换为dsp请求rdsp;

3.adx根据预定义条件,筛选出符合条件的dsp,形成可发送dsp列表,对此列表中的每个dsp进行下面的4~5的操作;

4.dsp的流量控制。对可发送dsp列表中的第i个dspdi,进行流量命中判断。如果流量命中(即命中步骤2)中的dsp请求),则会请求该dspdi;如果没有命中,则不会向dspdi发送dsp请求rdsp。具体的判断方法为:adx中设定dspdi对应的流量比例为pi,如果pi=0,则不发送请求rdsp;如果pi=100,发送请求rdsp;否则根据公式t=random(0,100)生成0到100之间的一个随机数ti。如果ti<=pi,发送请求;否则,不发送请求。如果判断rdsp要发送给di,则将请求rdsp加入到di的消息队列。例如,生成的随机数是50,该dsp的流量比例为80%,所以该dsp命中,将发送dsp请求到该dsp。

5.连接池获取连接请求dsp。每个dsp拥有一个连接池,从连接池中成功获取一个连接,从dspdi的消息队列中获取到一个请求,发向di。

6.等待dsp返回数据。当发送首个dsp请求的同时会设定请求rdsp的超时时间,之后开始等待所有dsp返回数据;

7.dsp返回广告的竞价。当所有dsp在超时时间内都成功返回数据或者耗时达到预定超时时间时,进入到竞价流程,获取出价最高的广告。例如:设定dsp的超时时间为200ms。有a,b,c,d四个dsp发送了dsp请求,a返回广告用时120ms,b耗时150ms,c耗时30ms,d耗时230ms,由于d的耗时大于200ms,在等待200ms后,d的返回被丢弃,a,b,c则进入到竞价流程。

8.返回竞价成功的广告到ssp,进行曝光。

经过上面的步骤,在adx实时请求dsp时,进行各个dsp的流量控制。每个dsp的请求都会先进入各自的队列,异步的去请求dsp。每个dsp维护各自的连接池,重用连接完成dsp请求。开始请求dsp时,设定超时时间,当所有的dsp在超时时间内返回了内容或者达到超时时间限制时,进行下一步的竞价流程,防止部分dsp超时延缓竞价。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1