Skip to content

H45AN/vanilla-rtb

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

142 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vanilla-rtb

Real Time Bidding (RTB) - Demand Side Platform framework

Utilizing modern C++11/14 features and latest BOOST libraries some critical path functionality written in C and older, easy on the eye, C++ .

our model diagram

Join the chat at https://gitter.im/vanilla-rtb/Lobby build

Structure ( work in progress ) :

  • / -- the root directory
    • boost-process/ -- C++11 not in official boost stack
    • boost-dll/ -- C++11 not in official boost stack
    • CRUD/ -- Restful web-service written in C++11 based on boost.ASIO and CRUD handlers
    • rtb/ -- C++11 framework and sandbox for testing platform solution
      • core/ -- generic structures shared in the project ( RTB specific )
      • common/ -- generic RTB agnostic structures
      • datacache/ -- IPC data store for fast lookups and matching
      • exchange/ -- exchange handlers implementations ( under review for more generic solution)
      • DSL/ -- DSL formats for jsonv ( under review )
    • examples/ -- root to our sandbox with examples
      • bidder/ -- collection of application specific classes to support targeting
      • loader/ -- collection of application specific classes to support campaign loading
  • [CMakeLists.txt] - cmake file

The stack of vanilla-rtb depends on other C++11 projects and is referencing them via gh-subree. To update to the latest version of boost-process , boost-dll , json-voorhees or CRUD use the following commands :

  • git subtree pull --prefix jsonv git@github.com:tgockel/json-voorhees.git master --squash
  • git subtree pull --prefix boost-process git@github.com:BorisSchaeling/boost-process.git master --squash
  • git subtree pull --prefix boost-dll git@github.com:apolukhin/Boost.DLL.git master --squash
  • git subtree pull --prefix CRUD git@github.com:venediktov/CRUD.git master --squash

###(📗) To build vanilla-rtb use following commands in the root of vanilla-rtb

###Linux :

  • mkdir Release
  • cd Release
  • cmake -DCMAKE_BUILD_TYPE=Release .. -G "Unix Makefiles"
  • gmake VERBOSE=1
  • cd ..
  • mkdir Debug
  • cd Debug
  • cmake -DCMAKE_BUILD_TYPE=Debug .. -G "Unix Makefiles"
  • gmake VERBOSE=1

###Windows : same steps as above for linux , only difference is depending on your environment either Visual Studio or NMake project can be used

  • cmake -DCMAKE_BUILD_TYPE=Release .. -G "NMake Makefiles"
  • cmake -DCMAKE_BUILD_TYPE=Debug .. -G "NMake Makefiles"
  • cmake -DCMAKE_BUILD_TYPE=Release .. -G "Visual Studio 14 2015"
  • cmake -DCMAKE_BUILD_TYPE=Debug .. -G "Visual Studio 14 2015"

###For faster builds invoking multiple make processes , find number of cores on your system Linux command :

  • nproc

4

pass it to your make script like this gmake -j4

About

Real Time Bidding (RTB) - Demand Side Platform framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 98.0%
  • CMake 1.2%
  • Other 0.8%