节点文献

基于gRPC的广告交易平台设计与实现

Design and Implementation of Advertising Exchange Platform Based on gRPC

【作者】 张驰;

【导师】 任桐炜; 刘峰;

【作者基本信息】 南京大学 , 工程硕士(软件工程领域)(专业学位), 2021, 硕士

【摘要】 随着移动互联网技术的发展,互联网流量大幅增加。互联网广告作为流量变现的主要手段,在广告市场的份额持续上升。由于互联网广告形式的多样性和不确定性,使得传统的广告购买已经不能满足广告主对于广告投放的精准性要求,因此以精准投放和实时竞价为核心的程序化广告交易应运而生。程序化广告交易是指广告主通过数字平台从受众匹配的角度由程序自动化完成展示类广告的采买和投放,并实时反馈投放分析的一种广告投放方式。程序化广告交易流程由多个数字化平台配合,其中广告交易平台是程序化广告交易中的交易场所,是连接媒体资源和广告主的平台,负责撮合媒体资源和广告主达成广告交易并确定广告成交价格。随着业务的发展,公司的自有媒体拥有大量的优质流量,需要通过广告变现,因此公司搭建了程序化广告交易体系来完成媒体资源的管理和广告的售卖。同时由于程序化广告交易市场前景广阔,公司计划依据自身优质流量,扩大在程序化广告交易领域中的影响力,进而吸引更多的外部优质媒体资源和广告主资源,提高公司的广告收益。本文通过对业务需求的分析,提出了广告交易平台的解决方案。系统基于Spring框架进行后端的搭建,通过gRPC框架搭建请求服务,与下游需求方平台进行数据传输,提高传输性能。针对业务高并发、低时延的需求,平台消除数据库实时依赖,使用对象存储服务(Object Storage Service,OBS)将数据表转化成同步文件,系统运行时下载到内存中,定时更新,实现内存级的数据查询。同时对于实时性数据使用Redis进行读写。为了缩短日志上报时间、与下游服务解耦,平台使用Kafka进行日志的上报。本文结合了广告交易平台的需求分析和关键技术,确定了系统的模块设计方案。系统主要划分为定向投放模块、广告请求模块、体验控制模块、竞价交易模块、文件同步模块、日志打点模块。定向投放模块实现了对广告请求匹配订单;广告请求模块负责发送竞价请求到下游需求方平台;体验控制模块负责过滤广告,提升用户广告体验,增强广告投放效果;竞价交易模块负责确定竞价成功的广告以及实际成交价格;文件同步模块负责下载数据文件,同步到内存中;日志打点模块负责上报广告请求日志信息到kafka平台。广告交易平台投入使用后,性能稳定,对广告请求响应及时。广告交易平台目前已接入公司大部分自有媒体,可直接触达国内大量优质智能终端用户,帮助公司扩大了在程序化广告交易领域的影响力,形成了良好的品牌效应。公司的广告收益有了大幅度的提升,且保持稳定增长趋势。

【Abstract】 With the development of mobile Internet technology,Internet traffic has increased substantially.Internet advertising,as the main means of monetizing traffic,continues to increase its share in the advertising market.Due to the diversity and uncertainty of Internet advertising,traditional advertising purchases can no longer meet advertisers’ accuracy requirements for advertising.Therefore,programmatic advertising transactions centered on accurate advertising and real-time bidding have emerged.Programmatic advertising transaction refers to an advertising delivery method in which advertisers automatically complete the purchase and delivery of display advertisements from the perspective of audience matching through a digital platform,and provide real-time feedback and analysis of advertising.The programmatic advertising transaction process is coordinated by multiple digital platforms.The advertising transaction platform is the trading venue in the programmatic advertising transaction.It is a platform that connects media resources and advertisers.It is responsible for matching media resources and advertisers to reach advertising transactions and determine advertising transactions.price.With the development of business,the company’s own media has a large amount of high-quality traffic,which needs to be monetized through advertising.Therefore,the company has built a programmatic advertising transaction system to complete the management of media resources and the sale of advertisements.At the same time,due to the broad prospects of the programmatic advertising transaction market,the company plans to expand its influence in the programmatic advertising transaction field based on its own high-quality traffic,thereby attracting more external high-quality media resources and advertiser resources,and increasing the company’s advertising revenue.This thesis puts forward a solution for the advertising trading platform through the analysis of business needs.The system is based on the Spring framework to build the back-end,builds the request service through the gRPC framework,and transmits data with the downstream demand-side platform to improve the transmission performance.In response to the high concurrency and low latency requirements of the business,the platform eliminates the real-time dependence of the database,and uses the Object Storage Service(OBS)to convert the data table into a synchronized file,which is downloaded to the memory when the system is running,and updated regularly to achieve a memory level Data query.At the same time,Redis is used to read and write real-time data.In order to shorten the log reporting time and decouple from downstream services,the platform uses Kafka for log reporting.This thesis combines the demand analysis and key technology of the advertising trading platform to determine the system’s modular design.The system is mainly divided into a targeted delivery module,an advertisement request module,an experience control module,a bidding transaction module,a file synchronization module,and a log management module.The targeted delivery module realizes matching orders for advertisement requests;the advertisement request module is responsible for sending bidding requests to the downstream demand-side platform;the experience control module is responsible for filtering advertisements,improving the user’s advertising experience,and enhancing the effect of advertising;the bidding transaction module is responsible for determining successful bidding advertisements And the actual transaction price;the file synchronization module is responsible for downloading data files and synchronizing them into the memory;the log management module is responsible for reporting ad request log information to the kafka platform.After the advertising trading platform is put into use,its performance is stable and it responds to advertising requests in a timely manner.At present,the advertising trading platform has been connected to most of the company’s own media and can directly reach a large number of high-quality smart terminal users in China,helping the company expand its influence in the field of programmatic advertising transactions and forming a good brand effect.The company’s advertising revenue has increased substantially and maintained a steady growth trend.

【关键词】 广告交易平台; Spring; Redis; gRPC; Kafka;
【Key words】 AD Exchange Platform; Spring; Redis; gRPC; Kafka;
  • 【网络出版投稿人】 南京大学
  • 【网络出版年期】2022年 05期
  • 【分类号】F713.8;TP311.52
  • 【下载频次】177
节点文献中: 

本文链接的文献网络图示:

本文的引文网络