Thread: Ad Server

    #1
  1. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2001
    Posts
    6
    Rep Power
    0

    Ad Server


    If anyone is interested in developing an Ad Server system from scratch, I've started with it (in PHP, mainly).

    I do know there are some OpenSource projects already about this subject, but I'm interested in a particular multi-language, module-based (for easy upgrades, add-ons, etc.) and *fast* thing.

    If you think this could be interesting for you, or you know about programming something like this, I'd be really happy if you let me know.

    SummerGirl
    summergirl@fadlan.com
    http://summergirl.fadlan.com
  2. #2
  3. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2001
    Location
    Maryland
    Posts
    2
    Rep Power
    0

    Question


    What's an "Ad Server"?

    (Sorry, I'm a scientist, so I guess I'll know things you don't just as you know things I don't.)

    Thanks.
  4. #3
  5. No Profile Picture
    aHVoPw==
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Jan 2001
    Posts
    1,058
    Rep Power
    15
    I have no idea either...


    anyways, are you looking for something like a banner rotator, and counts clicks (and probably calculate money caculations based on clicks), etc?
    Visit my new IIS Tutorial Series!
  6. #4
  7. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2001
    Posts
    6
    Rep Power
    0

    That's (almost) right...


    Phil K, it will be a pleasure to explain you.

    An Ad-Server is what DoubleClick (i.e.) uses to serve banners.
    This implies something more than just an ad rotator, as Keiichi suggested.

    An Ad-Server should be flexible enough to allow different campaigns/programs of advertisment. Banners and campaigns would have weights and some other criterious to make decisions about which banner is to be shown to a particular client.

    The decision mechanism should be fast, because supposedly, will have to serve thousands of ads daily.

    It must also contemplate, as stated by Keiichi, invoices, payments, cost per click, etc.

    If I find a better description in English of what an Ad-Server means (it's easy to find one better than this) I will post it here if you want.


    Thanks for showing your interest anyway.
  8. #5
  9. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2001
    Location
    Maryland
    Posts
    2
    Rep Power
    0
    OK, I think I understand (by the way I don't know PHP I use Perl)

    On my website at:

    http://www.server45.hypermart.net/cgiclasspk

    they put up banner ads on my pages at the top of the page (I selected that as a default rather than those pop-up ads.)

    But, you seem to be wanting something even more complex. Who will use this? You or your customers? I assume the code has to make a decision about the client? To know what kind of ad to place up.

    Sounds very complex to me, youíll need a database of clients, a database of ads, and a decision tree of some sort to match them up.

    I think you will need to explain it much better before I can tell if any of it makes sense to me, but if you donít want to Iíll understand.

    Perhaps you should sit down a write up how the program is going to function? That is always a good place to start & will help whomever ends up helping you.
  10. #6
  11. Newbie :P
    Devshed Frequenter (2500 - 2999 posts)

    Join Date
    Jan 2001
    Location
    In the PHP Engine :-)
    Posts
    2,880
    Rep Power
    21
    I built something similar recently which I will be launching on my web site when I return to the UK so I might throw some code at you which could be helpful, just one question, are you thinking of creating this as a stand alone app like doubleclick and then using it to earn money or are you thinking of creating one that others can download and install on there own servers???
    ---------------------
    -- SilkySmooth --
    ---------------------
    Proxy
  12. #7
  13. No Profile Picture
    Dev
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Jan 2001
    Posts
    1,436
    Rep Power
    41
    Well if it's going to be a high end server PHP is not the right language. I'm sure doubleclick's system is written in C++ and uses something like Oracle, Informix, or Sybase as a backend.
  14. #8
  15. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2001
    Location
    The Netherlands
    Posts
    66
    Rep Power
    14
    Doesn't phpAds do all that? Well, except for the decision mechanism, which you can code in yourself of course.
  16. #9
  17. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2001
    Posts
    6
    Rep Power
    0

    Continuing with it...


    First of all: I wish you all a Happy New Year 2002 :-)
    Next: excuse me for answering later. I was on holydays :-)
    and, of course, thankyou very much for the interest you have
    shown answering to this proposal.


    Phil K, this is a project for the company I work at. We are going to release an ad-server site. Everybody will earn cash by inserting banners in their web-sites. So, our ad server will serve banners for thousands clients.

    A person who decides to earn some cash by putting some banners in his/her web pages comes to our site (the ad server). He/she registers and subscribes to some categories and we give him/her the appropiate HTML code to insert in his/her source code.

    Our particular usage is not going to be a "free banner-exchange" system, we're paying people for click-through. Just like a doubleclick but for everybody (but adult-content sites, at first).

    Of course, we will be using databases (clients, ads, payments, etc.)

    SilkySmooth: My intention is to write free-open-source-code, in fact, I think we will be using code from another open-source projects. The code would be downloadable/instalable for everybody who wants it.

    I'm having difficulties in guessing the best way to plan the whole project itself, so please, any help is being asked and thanked.

    JeffCT: I was thinking in using shared memory with semaphores to store speed-critical data (PHP allows this). These data would be flushed to database every hour or so (don't know yet). Also, to speed up critical things, we would also use HEAP type tables, which are stored in memory.

    daholygoat: sorry, didn't have the time to see how phpAds actually works. Do you think is fast/flexible enought?


    Have a nice day!
  18. #10
  19. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Dec 2000
    Location
    San Diego, CA, USA
    Posts
    4
    Rep Power
    0
    I'm going to start by saying that the statement, "Well if it's going to be a high end server PHP is not the right language." is a bit bold.

    I disagree. I am all about using the right technology for the right product, and "right", sometimes means "most profitable". Agreed, PHP/MySQL may not always be the solution for the task at hand, but in many instances, it is more than sufficient for enterprise-level application development. And it's cheap...(read: free)

    I have been involved in a myriad of development projects using PHP/MySQL, several of which were for fortune 500 companies. For Pete's sake, NASA recently dumped Oracle for MySQL - it benchmarks faster than both Oracle and MSSQL7. It all depends what you are using it for. Sure, it's not as robust a database, but the functionality required for creating a banner ad rotation/tracking system is NOT rocket science (pardon the pun!).

    We(my company) are now in the process of creating another system designed for 100% flash sites, to allow banner placement/rotation/stats for a leading golf industry site. Our speciality is data-driven 100% flash websites and software.

    If you are still looking for people to help out with the banner system, I'd be glad to give you a proposal, with provision of more details.

    Thanks!

    Josh Ettwein
    Mission Vi, Inc.
  20. #11
  21. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jan 2002
    Posts
    2
    Rep Power
    0

    more than appears on the surface


    To truely do this right you have to be concerned with the future and not just the present. Take it from experience, when you want to add a feature to such a system it can take quite some work.
    Many things have to be considered as how you will present your advertisement. Will it be an at random selection? Will it be based upon priority and weighting? (how often do the banners show and what location on a page) You have cost per click, cost per impression, flat rate and even perhaps all combined.
    Will the ads stop once the clients funds run out?
    When their funds get low will an email be generated to notify the client of this?
    Will you target market specific items to specific people? Will you collect data from them to assist in target marketing? Do you plan on including a mailer system some day for mass mailing?
    Not only do you have to have a good administration and reporting system you also have to consider the client.
    They will want access to reports. Many clients come from other places doing the same thing. What about cache busting? People viewing the banners already cached on their system pays nothing.
    Another problem is ofline browsers and caching servers. AOL can be a pain.
    And then you have these idiots out there that write scripts to run your banners up into the millions. No reason to it but just plain meanness. So now perhaps you want to set cookies and control how many times a person can click a banner. So they disable cookies on their system. Now you have to deal with this. So you stop recording impressions and clicks from people that don't accept cookies.
    It doesn't end

    No matter what you program in the system is only going to be as good as the planning that goes into it.
    In order to answer questions you have to ask them. And that is what programming is all about eh?
    If it can happen it will.

    Don't toss away your pencil for the keyboard until you're sure where you're headed or you will spend more time patching and repairing than you would serving banners by hand.
  22. #12
  23. No Profile Picture
    Dev
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Jan 2001
    Posts
    1,436
    Rep Power
    41
    For Pete's sake, NASA recently dumped Oracle for MySQL - it benchmarks faster than both Oracle and MSSQL7.
    That example is a joke.... NASA had a small website (not their main one, a different one) that had some sort of mailing list, and they switched to MySQL for that small project. It's not as if they now use MySQL for mission control. The reason they used MySQL wasn't because of the speed, I read the article. They specifically said that the project was too small and simple to use a complex product like Oracle, so they switched to a simpler database - MySQL.

    To say PHP is not the right platform for anythign large scale would be a bit bold, but I doubt PHP could run something ilke doubleclick without 2-3 times the hardware.. That's all I said.
    Last edited by JeffCT; February 2nd, 2002 at 02:37 PM.
  24. #13
  25. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Apr 2001
    Location
    budapest, hungary
    Posts
    23
    Rep Power
    0
    hi, summergirl,

    what up? how did it go? what happened?
    did You make it?
  26. #14
  27. No Profile Picture
    Junior Member
    Devshed Newbie (0 - 499 posts)

    Join Date
    Mar 2003
    Posts
    10
    Rep Power
    0

    Try OASIS


    I my opinion, OASIS is best know Ad-Server, with the capability of serving in the neigborhood of 500,000 impressions per hour.

    Why invent the wheel again and waste time, when its already there for you to use?

    Try: http://oasis.sourceforge.net/

    Enjoy!

IMN logo majestic logo threadwatch logo seochat tools logo