etzee

What actually happens during a live show

The video path, how a bid reaches every screen in the same order, and why the clock belongs to the server.

The Metzee team20 Oct 20263 min read

A live auction is the one moment this app is under real load. Hundreds of people watching one thing, a price changing every few seconds, and everybody needing to see the same number at the same time. Here is how that is arranged.

The video

The host's phone sends video to Amazon IVS, in the Mumbai region, and every viewer plays it from there. It is one upload and many downloads, which is the only shape that works — a seller's phone cannot send its video to two hundred people.

A few seconds of delay is inherent to that path. It is why the clock is not in the video.

The bid

Every bid goes through one database function that does the whole thing at once: check the amount against the current price and the increment, record it, and update the item. Because it is one atomic step, two people tapping at the same instant cannot both be accepted at the same price — one wins and the other is told it was outbid, in the order the database saw them.

That ordering is the part worth understanding. The winner of a close auction is not whoever's finger was fastest; it is whoever's bid reached the database first, and the database only ever accepts one.

The clock

The clock belongs to the server, not to your phone. If it were yours, a slow connection would be a disadvantage and a changed device clock would be an advantage.

A bid in the final moments pushes the end back by 10 seconds. The video delay is exactly why: without it, somebody watching three seconds behind could never win a close item.

Getting the new price to every screen

Each viewer subscribes to the item and is pushed changes as they happen. Two things stop that becoming a flood:

A burst becomes one update. A host counting "ten, ten, ten" while three people tap produces several bids inside a moment, and those are gathered into a single refresh — 400 ms of gathering, short enough that nobody sees a stale price.

Silence is treated as suspicious. A subscription that has gone quiet looks exactly like one that has died, so once it has been quiet for 6 seconds a viewer asks the server directly instead of trusting the silence. An active show never pays for that; a viewer whose connection dropped gets the price back without reloading.

That pair took the busy case from nine requests per viewer per bid to two, which is the difference between a show that gets more popular and a show that gets slower as it gets more popular.

What is not kept

Nothing of the video is stored. The show happens and then it is over, which is also why the chat and the bid history are the only record of what was said and what it sold for.

Questions people ask

Why is my video behind the host's?

Because video has to travel and be rebuilt at your end. That is normal, and the clock extension exists to make it fair.

Can two people win the same item?

No. One function decides, and it decides once.

Does a faster phone help?

Not against the clock. It helps you see things sooner, which is a different advantage and a small one.

More: how bidding works, why the clock extended, is the show recorded, what you need to watch a show.

← All posts

There is a show on right now.

Nothing to install — it runs in this browser.

Find a showCreate an account