## api_v0 流程
- 按 openRtb 标准，解析请求数据。
  - 处理部分Ext数据，并适当调整。
- 读取配置，实例化dsp对象。
- 开启协程，协议转换，生成返回。
- 按 imp 类型，对所有返回进行归类。
- 一个imp下，多家dsp的返回做排序，按 ecpm ratio price 的顺序，做高低排序。
- 同imp下，选取广告：
  - 相同包去重
  - 价格为二价加1分
  - 计算dealPrice，payPrice
  - 不同 dsp 计算加密价格串
  - winNotice存入redis
  - 注意广告位设置的最大广告数，匹配满后，停止该imp的匹配。
- 修改返回串
  - 创建adsource
  - 附加我们的track：展示、点击、视频事件、开始下载、下载完成、开始安装、安装完成。
  - 宏替换：不同dsp有不同的宏
- DSP 做收尾工作。
  - 不同dsp可能有不同的任务，比如 穿山甲，需要把展示、点击、等等广告通知，缓存起来。穿山甲还需要对竞价失败的广告，发送通知。
- 生成我们的返回结构
- 缓存设备ID
- 记录匹配日志
