1.项目简介
SSP(Sell-SidePlatform 供应方平台),目前有
广告位管理
、报表管理
、模板管理
等模块
该系统是在百川的时候开发,然后一直维护到现在,后期里面的功能会逐步迁移到AOP平台的流量管理模块。
-
广告位管理 : 管理百度内部产品线的广告位,目前只涉及到贴吧、手百、百度云、手百小说、浏览器…
-
报表管理 : 不同维度的广告报表,主要涉及到展示、点击、计费等核心统计信息
-
模板管理 : 整个ssp系统的核心,把广告模板细粒度化到每一个字段,可以通过该系统定制化广告模板样式,可以在不同的平台上做到样式的重用。
2.项目架构
该系统选用的技术栈
yog2
、fis3
、angularjs
、gulp
,前后端完全分离
说明:之所以fis3 和 gulp会同时存在(都属于打包工具),是因为前期项目架构的时候,没有充分fis3的优势。而是 用的gulp + angular
开发的脚手架,先通过gulp进行项目打包,然后利用yog2进行项目部署
目录结构:
yog2
├── BCLOUD
├── LICENSE
├── README
├── README.md
├── app.js
├── build.sh
├── conf
│ ├── plugins
│ └── ral
├── node_modules.tar.gz
├── package.json
└── plugins
├── README.md
├── bdservice
├── bdservice-plugin.json
├── session
└── session-plugin.json
APP-native
├─client # 前端代码
│ ├─page # 前端页面
│ ├─project # 项目目录
│ │ ├─package.json
│ │ ├─gulpFile.js
│ │ ├─gulp
│ │ ├─src
│ │ ├─bower_components
│ │ └─node_modules
│ ├─static # 前端非模块化静态资源
│ │ ├─css
│ │ └─js
│ └─widget # 前端组件
├─fis-conf.js # FIS编译配置
└─server # 后端代码
├─action # Action是指MVC中的路由动作,处理页面请求
├─lib # 可以存放一些通用库
├─model # 可以存放一些数据层代码,如后端API请求等
└─router.js # AppRouter路由,用于处理自动路由无法满足的需求
3.项目部署
*前提:环境必备
确保当前开发机已安装Nodejs(版本高于V6.0.0支持ECMSCRIPT6/7最新标准)、FIS3、YOG2(Node版本管理推荐使用NVM)
1.gitlab地址
http://gitlab.baidu.com/NativeAds/App-native.git
2.svn模块
dianquan/node/nativeads
3.线上地址
nativeads.tieba.baidu.com/native
4.运行
// clone代码
git clone http://gitlab.baidu.com/NativeAds/App-native.git
// 安装依赖
cd App-native/client/project
npm install
bower install
// 或者通过解压已打包好的tar包
cd App-native/client/project
tar -zxvf node_modules.tar.gz
tar -zxvf bower_components.tar.gz
// 本地运行
cd App-native/client/project
gulp server
// 本地编译
gulp build
// 发布代码(debug代表的是开发时候的开发模式,8084代码的是发布的端口号)
yog2 release debug -wLd 8084