Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Баннерная сеть
 
 автор: Unkind™   (13.06.2006 в 22:53)   письмо автору
 
 

Хочу сделать баннерную сеть. К примеру, пользователи, набирают кредиты, показывая картинки с бан. сети, а потом эти кредиты тратятся на показ их баннера на др. сайтах...А как сделать, чтобы равномерно распределялись показы в соответствии с кредитами?

   
 
 автор: kievigor   (14.06.2006 в 00:50)   письмо автору
 
   для: Unkind™   (13.06.2006 в 22:53)
 

Да, вопрос сложный особенно в начале.
Предположим, грубо, у тебя есть 3 сайта, один показывает 1000 два других вместе 500 как достичь баланса да еще и чтоб все честно было.
Хорошо когда у тебя есть огромное количество сайтов в сети, тогда по идее должно примерно поровну распределяться, а для начала я так понимаю придется для баланса жертвовать комиссией и неплохо было бы, для резерва, своих пару сайтов иметь, с неслабым количеством показов. Старт дело сложное :)))

   
 
 автор: Unkind™   (14.06.2006 в 01:25)   письмо автору
 
   для: kievigor   (14.06.2006 в 00:50)
 

Хорошо когда у тебя есть огромное количество сайтов в сети, тогда по идее должно примерно поровну распределяться
Если сайт с 20000 хостами и 1 хостом будут иметь одинаковое количество показов на чужих сайтах, то это уже не баннерная сеть.

для начала я так понимаю придется для баланса жертвовать комиссией
Как раз мне это не нужно. Мне нужно скрипт разработать.

И это скрипт нужен не мне. Не мне "стартовать".

   
 
 автор: kievigor   (14.06.2006 в 02:09)   письмо автору
 
   для: Unkind™   (14.06.2006 в 01:25)
 

Чего то я тут наверно не понял.
Ну к примеру есть у тебя база данных с регистрациями сайтов. Ну прошел один показ баннера одного сайта на другом сайте. В строку с регистрацией того сайта на котором показываешь баннер добавляешь единицу, а в строке сайта чей это баннер от баланса отнимаешь единицу. Когда принимается решение чей баннер показывать делаешь выборку с сортировкой по убыванию и берешь большее число показов и после показа от него отнимаешь единицу и так далее. Это конечно упрощенный алгоритм, но для начала пойдет.
Только вот от ситуации когда в сети нет изначально баланса показов никакими алгоритмами не отделаться. Нужно или сеть с нуля растить, или обманывать, что все поначалу и делают.

   
 
 автор: Unkind™   (14.06.2006 в 02:13)   письмо автору
 
   для: kievigor   (14.06.2006 в 02:09)
 

Это конечно упрощенный алгоритм, но для начала пойдет.
Нет, не пойдет) Не затем я тему создавал)

   
 
 автор: kievigor   (14.06.2006 в 02:14)   письмо автору
 
   для: Unkind™   (14.06.2006 в 02:13)
 

А что не так?

   
 
 автор: Unkind™   (14.06.2006 в 02:23)   письмо автору
 
   для: kievigor   (14.06.2006 в 02:14)
 

kievigor
Мне нужно, чтобы выбиралось случайный баннер из базы, но шансы быть "случайно" выбранным были больше у тех, у кого показов больше...

   
 
 автор: kievigor   (14.06.2006 в 02:30)   письмо автору
 
   для: Unkind™   (14.06.2006 в 02:23)
 

Первый сайт будет не все время один и тот же а по мере расхода его показов его рейтинг упадет и он будет не первый, а самый заурядный сайт все равно поднимется накапливая показы на первое место, так что я думаю это лишнее.

(но шансы быть "случайно" выбранным были больше у тех, у кого показов больше...)
А как собственно может быть иначе?
В этом и есть смысл сбалансированного показа. Чем сайт больше демонстрирует чужих баннеров тем и (шансы быть "случайно" выбранным) будут у него больше. Если попытаться перекосить эту систему у вас просто моментально закончатся показы низкорейтинговых сайтов и вы все равно вынуждены будете демонстрировать многократно баннеры сайтов с высоким рейтингом. Другой способ это только обман.

   
 
 автор: Unkind™   (14.06.2006 в 03:12)   письмо автору
 
   для: kievigor   (14.06.2006 в 02:30)
 

Только вот зачем? Смысл непонятен.
Смысл регистрации в такой галимой баннерной сети будет непонятен тем, кто знает, что у него будет меньше показов, чем у того, кто на 1 месте.

   
 
 автор: kievigor   (14.06.2006 в 12:35)   письмо автору
 
   для: Unkind™   (14.06.2006 в 03:12)
 

>Только вот зачем? Смысл непонятен.
>Смысл регистрации в такой галимой баннерной сети будет
>непонятен тем, кто знает, что у него будет меньше показов,
>чем у того, кто на 1 месте.

Ну блин, по моему как раз наоборот :))
Сеть будет галимой если показываешь ты чужих баннеров больше всех, а твои баннеры показывают мало. Это и есть ГАЛИМАЯ, НЕЧЕСТНАЯ баннерная сеть в которую никто не пойдет :))
Тут чего то либо я не догоняю, либо вы чего то не то формулируете.
Вам что нужен алгоритм как показать в два раза больше своих баннеров чем самому чужих? Приведенный ранее алгоритм не может быть не справедливым. Вы показали один, ваш показали один раз. А то что выборка идет по тому, у которого накопилось больше показов, так это отнюдь не значит, что будут показываться только популярные, так как по мере расхода показов у популярных и накоплению показов не популярными они будут меняться местами и причем в абсолютно случайном порядке. И показывать они будут строго пропорционально тому сколько раз показали их баннеры.

Но все это будет работать только при условии изначальной сбалансированности сети. Что бы достичь этого баланса в сети из трех сайтов, при старте, можно попробовать использовать в качестве запаса показов комиссию, и, или подключить своих пару сайтов с большим количеством показов и за счет всего этого пытаться вначале выравнивать перекос, если надо чтоб честно было :)) Ну или в противном случаи придется списывать наиболее популярному сайту показы ничего не демонстрируя.

   
 
 автор: Unkind™   (14.06.2006 в 13:17)   письмо автору
 
   для: kievigor   (14.06.2006 в 12:35)
 

Тут чего то либо я не догоняю, либо вы чего то не то формулируете.
Давайте я вам объясню тогда по слова, потому что не "догоняете" ВЫ...

Смысл регистрации в такой галимой баннерной сети будет непонятен тем, кто знает, что у него будет меньше показов, чем у того, кто на 1 месте.
То есть те, у кого МАЛО показов, им НЕ БУДЕТ смысла держать баннер у себя на сайте, так как он знает, что самый заурядный сайт все равно поднимется накапливая показы на первое место

Сеть будет галимой если показываешь ты чужих баннеров больше всех, а твои баннеры показывают мало.
Я про тоже...

Следите за своими постами...

----------------------------------------------------

Все, не нужен мне этот алгоритм, другое придумал...

   
 
 автор: kievigor   (14.06.2006 в 14:02)   письмо автору
 
   для: Unkind™   (14.06.2006 в 13:17)
 

Наверное я понял в чем дело.
Наверное мы просто не договорились о том что такое первое место. Я имел в виду первое место не по суммарному показу в сутки, а первое место при выборке из базы данных баланса показанных и израсходованных показов на данную секунду времени. К рейтингу сайта по суммарному суточному показу это не имеет ни какого отношения, я его в этом диалоге вообще не рассматривал. То есть абсолютно все равно какой абсолютный рейтинг имеет сайт при принятии решения чей баннер показывать, показывают баннер того сайта чья очередь подошла по расходу показов. А очередь эта определяется по тому у какого сайта на данную секунду уже показов чужих баннеров больше, путем выборки из базы и сортировки по полю с показами по убыванию. Ничего другого здесь придумать нельзя. Если вы додумались до чего то иного поделитесь пожалуйста так как мне эта тема тоже очень интересна.
Извините если что ни так.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования