golang与高性能dsp竞价系统

上传人:E**** 文档编号:106512609 上传时间:2019-10-15 格式:PDF 页数:47 大小:4.20MB
返回 下载 相关 举报
golang与高性能dsp竞价系统_第1页
第1页 / 共47页
golang与高性能dsp竞价系统_第2页
第2页 / 共47页
golang与高性能dsp竞价系统_第3页
第3页 / 共47页
golang与高性能dsp竞价系统_第4页
第4页 / 共47页
golang与高性能dsp竞价系统_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《golang与高性能dsp竞价系统》由会员分享,可在线阅读,更多相关《golang与高性能dsp竞价系统(47页珍藏版)》请在金锄头文库上搜索。

1、专业DSP解决方案供应商 Golang与高性能DSP竞价系统 By QLeelulu 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved RTBRTB: Real Time Bidding,实时竞价,允许广告买家根 据活动目标、目标人群以及费用门槛等因素对每一个广 告及每次广告展示的费用进行竞价。 DSPDSP: Demand Side Platform,需求方平台,允许广告 客户和广告机构更方便地访问,以及更有效地购买广告 库存,因为该平台汇集了各种广告交易平台的库存。 什么是RTB与DSP 专业DSP解决方案 广州舜飞信息

2、科技有限公司 All Right ReservedAll Right Reserved 什么是RTB与DSP 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 什么是RTB与DSP 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 高并发量请求处理 每天几十亿竞价请求 每个竞价请求要在80毫秒内响应(包含网络延迟) 复杂的出价逻辑 DSP竞价系统的挑战 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right R

3、eserved 竞价请求解析(JSON 或 Google Protobuf) 根据广告位属性过滤活动 根据客户端信息过滤活动(浏览器、操作系统类型等) 根据地区过滤活动 查询Cookie Mapping得到访客在DSP系统的唯一ID 根据用户看过广告的频次过滤活动 根据访客的人群属性过滤活动 根据活动的出价选择胜出的活动 其他更细致的过滤条件 80毫秒内要做些什么 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 为什么选择Golang 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll

4、 Right Reserved 2012-11-29 在 Go 1.1 发布之后 第一次签入 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved http包的HelloWorld性能测试 为什么选择Golang Via: 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 高性能、天生并发支持 性能敏感的模块可以直接使用C编写 编译为本地机器码,部署方便 快速上手,学习成本低 标准库基本够用 带GC 自带单元测试、性能测试、性能分析工具 开发效率不低 为什么选

5、择Golang 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved C+ NodeJS Golang 备选 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 竞价接口 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 直接用golang的http包 只使用gorilla/mux做简单的请求路由 封装简单的HTTPBaseHandler HTTP竞价接口 专业DSP解决方案 广州舜飞信息科技

6、有限公司 All Right ReservedAll Right Reserved 简单的HTTPBaseHandler 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 统计竞价请求数(准实时) 导入广告位信息 其他数据分析需求 日志处理 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 缓存 按天分割 日志处理: 写入 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved Tail f

7、日志处理: 读取与分析 t, err :=:= tail.TailFile(“/var/log/nginx.log”, ? ? tail.ConfigFollowFollow: truetrue)? forfor line :=:= rangerange t.Lines ? fmt.Println(line.Text) ? ? 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 并行处理多个日志文件 日志处理: 读取与分析 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right R

8、eserved 目前单机每天写入300G 处理结果接近实时 日志处理 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 重度使用Redis 存放的数据包括 CookieMapping(一个ADX会超过10亿个key) 曝光频次 DMP人群数据 实时费用消耗 其他 Redis集群 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved Server端:等待Redis官方 Proxy中间代理:twemproxy,维护方便,有一定的性 能消耗 Client端:配置、维

9、护麻烦,几乎无性能损耗 Redis集群 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 最终在Client端实现 一致性hash: 预先开启足够多的Redis实例,预防增加节点带来的数据 迁移麻烦 Redis集群 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 15台机器 100个Redis实例 占用500G内存 峰值QPS在20万 Redis集群 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right R

10、eserved 组合多个命令一起发送(非事务) Redis Pipeline 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved Go不支持以后台进程的方式启动 使用Supervise来管理进程 部署:进程管理 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 独立部署 方便更新与重启 把服务划分为独立的进程 ./bin? adx_mod? analysis? bid? charge? convrate_import? cookie_map? dispatc

11、h? ip_import? kpicharge? pdmp? whisky? 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved ulimit fs.file-max = 800000 net.nf_conntrack_max = 4194304 net.ipv4.tcp_max_tw_buckets = 4194304 tcp_max_syn_backlog = 500000 sysctl.conf 其他调优 部署:高并发服务器调优 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll R

12、ight Reserved Nginx做前端 开多个Go进程 Nginx的upstream做负载均衡 部署:web服务器 NginxNginx Go竞价服务 Go竞价服务 Go竞价服务 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 使用DNSPod的创业版收费套餐 速度快、稳定 解析生效快 部署:DNS级别负载均衡 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 三个人(Golang部分) 三个多月 第一版正式上线 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 12台竞价服务器,CPU为8核16线程 每天40亿+竞价请求 峰值8万QPS 98%响应在10ms以内 大半年以来无异常,稳定 线上运行情况 专业DSP解决方案 广州舜飞信息科技有限公司 All Right ReservedAll Right Reserved 响应时间超过80毫秒则为超时 差不多达到1%的超时率,峰值时达到2% 哪里出问题?网

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号