prebid / Prebid.js

Setup and manage header bidding advertising partners without writing code or confusing line items. Prebid.js is open source and free.
https://docs.prebid.org
Apache License 2.0
1.28k stars 2.05k forks source link

Question: Can someone explain in simple terms what "concurrent auction" means? #3958

Closed headerbidding closed 5 years ago

headerbidding commented 5 years ago

Type of issue

Question: Can someone explain in simpler terms (and with an example) what "concurrent auction" means?

Ref: https://gist.github.com/mkendall07/3dd690e7f624b61cb364fbf8a4ba8dbb

jaiminpanchal27 commented 5 years ago

@headerbidding In 0.x all calls to requestBids were queued so at a time only one auction could run. Subsequent calls to requestBids would have to wait for previous auction to finish. With concurrent auction we removed this and allowed each auction to start as soon as requestBids is executed.

pbjs.requestBids(options1) // first auction
pbjs.requestBids(options2) // second auction

In 0.x second auction would be queued if first is not finished.
In >=1.0 both auction will start at the same time in parallel.
headerbidding commented 5 years ago

Hmmm. I thought there is just one auction for each ad and the highest bidder wins.

stale[bot] commented 5 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

headerbidding commented 5 years ago

I still dont understand

bretg commented 5 years ago

I thought there is just one auction for each ad and the highest bidder wins.

There is just one auction per adunit. But there are use cases like infinite scroll where there's a series of calls to pbjs.requestBids()

  1. pbjs.requestBids() - covers the initial adunits on the page
  2. pbjs.requestBids() - covers the first 300x250 in a dynamic div on scroll
  3. pbjs.requestBids() - covers the second 300x250 in a dynamic div on scroll
  4. pbjs.requestBids() - covers the third 300x250 in a dynamic div on scroll

Concurrent auction means that subsequent calls to requestBids don't have to wait for their predecessors. So the auction #4 above can start before #3 completes.

headerbidding commented 5 years ago

Thank you. Now I got it 👍 -)

bretg commented 5 years ago

Cool