一种广告分发方法、装置及电子设备与流程

文档序号:16633002发布日期:2019-01-16 06:45阅读:150来源:国知局
一种广告分发方法、装置及电子设备与流程

本发明涉及广告分发技术领域,具体涉及了一种广告分发方法、装置及电子设备。



背景技术:

服务器向客户端分发广告时,通常包括广告检索、广告筛选、和广告排序三个相关关联的逻辑单元。现有技术中,每个逻辑单元开发时,通常会出现多个分支,以广告筛选逻辑单元为例,对广告进行筛选时,有时需要先对广告进行分类,比如根据广告的类型分为展示收费类型的广告、点击收费类型的广告、以及其他类型的广告等,当需要添加某个功能且该功能覆盖多个分支时,需要在多个分支添加代码,而且添加的功能越多,逻辑越复杂。

由于广告筛选逻辑单元功能较多,而且变动也很快,因此经常需要添加或者更新业务逻辑。现有的方法在进行功能追加时,由于现有的逻辑分支较多,业务流根据不同的场景涉及多个分支,若追加新的功能,必须将现有功能和数据流看明白,才能将新的逻辑叠加进来,如果不了解现有业务功能,很难在现有逻辑基础上进行追加操作或者删除操作。

因为不同逻辑单元以及各逻辑单元中的各子单元的耦合性较强,修改和删除任一逻辑单元或者子单元需要改动的地方较多,花费的时间较长,因此现有的广告分发方法的开发周期较长,效率较低。



技术实现要素:

本发明实施例提供了一种广告分发方法、装置及电子设备,能够缩短开发周期和提高开发效率。

本发明实施例第一方面提供了一种广告分发方法,应用于服务器,包括:

设置具有通用接口的检索模块、过滤模块、和排序模块;其中,所述检索模块用于根据客户端的广告请求和所述服务器端的第一广告集合a1确定所述第一广告集合a1中与所述广告请求匹配的第二广告集合a2;所述过滤模块用于使用过滤策略对所述第二广告集合a2中的广告进行筛选;所述排序模块用于根据排序规则对筛选后的所述第二广告集合a2中的广告进行排序,得到待分发的第三广告集合a3;

接收客户端发送的广告请求;

依次调用所述检索模块、过滤模块、和排序模块;

将所述第三广告集合a3发送给请求广告的所述客户端。

结合本发明第一方面,在本发明第一方面第一种可能的实现方式中,

所述检索模块、过滤模块、和排序模块中的任意一个模块mi根据所述模块mi的功能设置至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;

所述模块mi的任意一个子功能gj通过配置文件调用所述子功能gj对应的具有通用接口的子模块实现。

结合本发明第一方面第一种可能的实现方式,在本发明第一方面第二种可能的实现方式中,所述方法还包括:

当所述模块mi增加新的功能时,设置与所述新的功能匹配的配置文件。

结合本发明第一方面第二种可能的实现方式,在本发明第一方面第三种可能的实现方式中,所述设置与所述新的功能匹配的配置文件,包括:

确定用于实现所述新的功能的子模块集合m′;

设置配置文件用于依次调用所述子模块集合m′中的各子模块。

结合第一方面、第一方面的第一种至第三种任一所述可能的实施方式,在第一方面的第四种可能的实施方式中,所述方法还包括:

当所述模块mi删除某个已知功能时,删除与所述待删除的已知功能匹配的配置文件p、或者设置所述配置p文件不可用。

本发明实施例第二方面公开了一种广告分发装置,应用于服务器,包括:

设置单元,用于设置具有通用接口的检索模块、过滤模块、和排序模块;其中,所述检索模块用于根据客户端的广告请求和所述服务器端的第一广告集合a1确定所述第一广告集合a1中与所述广告请求匹配的第二广告集合a2;所述过滤模块用于使用过滤策略对所述第二广告集合a2中的广告进行筛选;所述排序模块用于根据排序规则对筛选后的所述第二广告集合a2中的广告进行排序,得到待分发的第三广告集合a3;

接收单元,用于接收客户端发送的广告请求;

调用单元,用于依次调用所述检索模块、过滤模块、和排序模块;

发送单元,用于将所述第三广告集合a3发送给请求广告的所述客户端。

结合本发明第二方面,在本发明第二方面第一种可能的实现方式中,

所述设置单元还用于,对所述检索模块、过滤模块、和排序模块中的任意一个模块mi根据所述模块mi的功能设置至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;所述模块mi的任意一个子功能gj通过配置文件调用所述子功能gj对应的具有通用接口的子模块实现。

结合本发明第二方面第一种可能的实现方式,在本发明第二方面第二种可能的实现方式中,所述设置单元还用于,当所述模块mi增加新的功能时,设置与所述新的功能匹配的配置文件。

结合本发明第二方面第二种可能的实现方式,在本发明第二方面第三种可能的实现方式中,在设置与所述新的功能匹配的配置文件方面,所述设置单元具体用于,

确定用于实现所述新的功能的子模块集合m′;

设置配置文件用于依次调用所述子模块集合m′中的各子模块。

结合第二方面、第二方面的第一种至第三种任一所述可能的实施方式,在第二方面的第四种可能的实施方式中,所述设置单元还用于,当所述模块mi删除某个已知功能时,则删除与所述待删除的已知功能匹配的配置文件p、或者设置所述配置p文件不可用。

本发明实施例第三方面提供了一种电子设备,包括:处理器、存储器、通信接口和总线;

所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;

所述存储器存储可执行程序代码;

所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行一种广告分发方法;其中,所述广告分发方法包括:

设置具有通用接口的检索模块、过滤模块、和排序模块;其中,所述检索模块用于根据客户端的广告请求和所述服务器端的第一广告集合a1确定所述第一广告集合a1中与所述广告请求匹配的第二广告集合a2;所述过滤模块用于使用过滤策略对所述第二广告集合a2进行筛选;所述排序模块用于根据排序规则对所述第二广告集合a2进行排序,得到待分发的第三广告集合a3;

接收客户端发送的广告请求;

依次调用所述检索模块、过滤模块、和排序模块;

将所述第三广告集合a3发送给请求广告的所述客户端。

本发明实施例第四方面提供一种存储介质,其中,该存储介质用于存储应用程序,所述应用程序用于在运行时执行本发明实施例所述的一种广告分发方法。

本发明实施例第五方面提供一种应用程序,其中,该应用程序用于在运行时执行本发明实施例所述的一种广告分发方法。

本发明实施例第六方面提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例第一方面或者第一方面的任一可能的实施方式所述的广告分发方法。

本发明实施例第七方面提供了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种广告分发方法,所述方法包括:本发明实施例第一方面或者第一方面的任一可能的实施方式所述的文件扫描方法。

本发明实施例中,在进行广告分发时,通过将广告分发架构设置为具有通用接口的检索模块、过滤模块、和排序模块,方便对广告分发进行模块化开发,由于各模块之间的接口为通用接口,所以减少了模块之间的耦合,这样有利于缩短开发周期,提高开发效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面对实施例描述中使用的附图作简单地介绍。

图1是本发明实施例公开的一种广告分发方法流程示意图;

图2是本发明实施例公开的一种广告分发装置的结构示意图;

图3是本发明实施例公开的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明实施例提供了一种广告分发方法,应用于服务器,通过在不同模块之间设置通用接口,降低了模块之间的耦合,有利于缩短开发周期,提高开发效率。

参阅图1,图1是本发明一个实施例公开的一种广告分发方法的流程示意图,该广告分发方法应用于服务器,如图1所示,该广告分发方法具体包括以下步骤:

s101、设置具有通用接口的检索模块、过滤模块、和排序模块;

其中,所述检索模块用于根据客户端的广告请求和所述服务器端的第一广告集合a1确定所述第一广告集合a1中与所述广告请求匹配的第二广告集合a2;

所述过滤模块用于使用过滤策略对所述第二广告集合a2中的广告进行筛选;

所述排序模块用于根据排序规则对筛选后的所述第二广告集合a2中的广告进行排序,得到待分发的第三广告集合a3。

可以理解的,第三广告集合a3可以是对筛选后的所述第二广告集合a2中的广告进行排序后最靠前的至少一个广告。比如第三广告集合a3中的广告可以是所述第二广告集合中排序为第一的广告,或者排序为前三的广告等。

在本发明一些可能的实施方式中检索模块、过滤模块、和排序模块中的任意一个模块mi根据所述模块mi的功能设置至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;所述模块mi的任意一个子功能gj通过配置文件调用所述子功能gj对应的具有通用接口的子模块实现。

举例来说,过滤模块可以使用多个过滤策略,第一过滤策略可以是:行业黑名单过滤策略和终端中应用版本号过滤策略;第二过滤策略可以是预算过滤策略和动图过滤策略。

在本实施例中,行业黑名单过滤策略是指发出广告请求的客户端指定不接收某类型的广告比如医疗广告,则医疗广告就是行业黑名单中的黑名单成员。终端中应用版本号过滤策略,是指服务器根据终端中用于广告获取的应用的版本号的不同,向终端发送与终端的广告获取应用的版本号匹配的广告。则过滤模块对应于第一过滤策略可以设置第一配置文件,第一配置文件中包括行业黑名单过滤子模块和终端中应用版本号过滤子模块,各子模块具有通用的接口。

其中,预算过滤策略是服务器对某个广告设置了预算,所述预算用于向客户端支付客户端展示广告的费用,若某个广告的预算还未用完,则可以通过预算过滤策略。动图过滤策略是指,有的客户端中请求广告的应用不支持动图(比如动态的gif图),则服务器不向该客户端发送动图。则过滤模块对应于第二过滤策略可以设置第二配置文件,第二配置文件中包括预算过滤子模块和动图过滤子模块,各子模块具有通用的接口。

s102、接收客户端发送的广告请求。

s103、依次调用所述检索模块、过滤模块、和排序模块。

在调用具体模块时,根据需要确定配置文件,通过配置文件调用配置文件中包括的子模块。比如调用过滤模块时,若指定采用第一过滤策略,则调用第一配置文件中的行业黑名单过滤子模块和终端中应用版本号过滤子模块。

s104、将所述第三广告集合a3发送给请求广告的所述客户端。

本发明实施例中,在进行广告分发时,通过将广告分发架构设置为具有通用接口的检索模块、过滤模块、和排序模块,方便对广告分发进行模块化开发,由于各模块之间的接口为通用接口,所以减少了模块之间的耦合,这样有利于缩短开发周期,提高开发效率。同时,各模块通过将大功能细化为至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;这种的架构可以提高子模块的重用性,提高开发效率。

在本发明一些可能的实施方式中,当需要给某个模块增加新的功能时,可以通过设置与新功能匹配的配置文件来实现,具体地,可以先确定用于实现新功能的子模块集合m′,然后设置配置文件用于依次调用子模块集合m′中的各子模块。比如若新的功能用到子模块m1、m2、和m3,则可以设置一个新的配置文件,配置文件依次调用子模块m1、m2、和m3。

在本发明一些可能的实施方式中,当需要删除某个模块的某个已知功能时,只需要删除与待删除的已知功能匹配的配置文件p、或者将配置文件p设置为不可用即可。通过改变配置文件的方式,被删除功能的子模块并不被删除,可以留待后续需要的时候使用,有利于软件的复用,当再次需要使用时,添加入配置文件可以继续调用。

可以理解的,若需要对其中一个子模块比如m1进行更新,只需要修改子模块m1中的内容即可,子模块m1的修改对其他模块没有影响。因此本发明提供的实施方式可以实现模块的灵活配置。

请参阅图2,图2是本发明的一个实施例提供的一种广告分发装置200,应用于服务器,包括:设置单元201、接收单元202、调用单元203、和发送单元204;其中,

设置单元201,用于设置具有通用接口的检索模块、过滤模块、和排序模块;其中,所述检索模块用于根据客户端的广告请求和所述服务器端的第一广告集合a1确定所述第一广告集合a1中与所述广告请求匹配的第二广告集合a2;所述过滤模块用于使用过滤策略对所述第二广告集合a2中的广告进行筛选;所述排序模块用于根据排序规则对筛选后的所述第二广告集合a2中的广告进行排序,得到待分发的第三广告集合a3。设置装置201的实施方式可以参考本发明方法实施例对图1中s101的描述,在此不再赘述。

接收单元202,用于接收客户端发送的广告请求。接收单元202的实施方式可以参考本发明方法实施例对图1中s102的描述,在此不再赘述。

调用单元203,用于依次调用所述检索模块、过滤模块、和排序模块。

调用单元203的实施方式可以参考本发明方法实施例对图1中s103的描述,在此不再赘述。

发送单元204,用于将所述第三广告集合a3发送给请求广告的所述客户端。发送单元204的实施方式可以参考本发明方法实施例对图1中s104的描述,在此不再赘述。

在本发明一些可能的实施方式中,设置单元201还可以用于,对检索模块、过滤模块、和排序模块中的任意一个模块mi根据所述模块mi的功能设置至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;所述模块mi的任意一个子功能gj通过配置文件调用所述子功能gj对应的具有通用接口的子模块实现。

在本发明一些可能的实施方式中,设置单元201还可以用于,当模块mi增加新的功能时,设置与所述新的功能匹配的配置文件。

在本发明一些可能的实施方式中,在设置与所述新的功能匹配的配置文件方面,设置单元201具体用于,确定用于实现所述新的功能的子模块集合m′;设置配置文件用于依次调用所述子模块集合m′中的各子模块。

在本发明一些可能的实施方式中,设置单元201还可以用于,当模块mi删除某个已知功能时,则删除与所述待删除的已知功能匹配的配置文件p、或者设置所述配置p文件不可用。

可以理解的,若需要对其中一个子模块比如m1进行更新,只需要修改子模块m1中的内容即可,子模块m1的修改对其他模块没有影响。因此本发明提供的实施方式可以实现模块的灵活配置。

请参阅图3,为本发明实施例提供的一种电子设备300,包括:处理器301、存储器302、通信接口303和总线304;

其中,通信接口303用于与客户端进行通信,比如接收客户端发送的广告请求,以及向客户端发送广告等。

处理器301、存储器302和通信接口303通过总线304耦合连接。其中,所述存储器302用于存储计算机可执行程序代码,所述可执行程序代码包括指令;当所述处理器301执行所述指令时,所述指令执行本发明方法实施例的方法,可以参考图1中s101至s104,以及上述方法实施例中各步骤执行过程对应的描述,在此不再赘述。

基于同一发明构思,本发明实施例中提供的电子设备解决问题的原理与本发明方法实施例中的广告分发方法相似,因此该电子设备的实施可以参见上述方法的实施,为简洁描述,在这里不再赘述。

采用本发明实施例提供的技术方案,在进行广告分发时,通过将广告分发架构设置为具有通用接口的检索模块、过滤模块、和排序模块,方便对广告分发进行模块化开发,由于各模块之间的接口为通用接口,所以减少了模块之间的耦合,这样有利于缩短开发周期,提高开发效率。同时,各模块通过将大功能细化为至少一个子功能,每个子功能对应具有通用接口的至少一个可配置的子模块;这种的架构可以提高子模块的重用性,提高开发效率。

本发明实施例还提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述程序执行时包括上述方法实施例中记载的任意一种广告分发方法的部分或全部步骤。

本发明实施例还提供了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行本发明方法实施例所述的一种广告分发方法。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:u盘、移动硬盘、磁碟、光盘、只读存储器(rom,read-onlymemory)或者随机存取存储器(ram,randomaccessmemory)等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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