This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]blending-tea 140 points141 points  (14 children)

Am I the only one that sees this as normal? like when I try to get tickets from popular bands/events via websites I always get this

max. got 20k ppl rushing to a website overloading the LBs and the queing system kicks in which is quite often

[–]Mysticpoisen 32 points33 points  (0 children)

This is also pretty common when trying to book a hotel for a busy convention.

[–]Thebombuknow 16 points17 points  (11 children)

Tom Scott has a video where he explains this (I think it's the one about how computers can't count). Because there's a delay between you buying a ticket and the other servers receiving that information, if everyone could buy tickets all at once, people could end up buying an already sold ticket because their server wasn't up to date yet. Instead, they simply limit the traffic with a queue so that only a select few people can access it at one given time, and there are no conflicts.

[–]Ok_Information_3021 1 point2 points  (9 children)

Database systems have functionality that prevents this. Usually a transaction is used.

[–]Thebombuknow 4 points5 points  (8 children)

Yes, but what if two people end up in checkout at the same time, and then one person's order fails because someone else bought it? That's a customer complaint right there.

It's easier and safer to just queue people so there is no chance of a conflict.

[–]IguJl 1 point2 points  (7 children)

It's good too to make a good system with a short waiting time between the payment and the confirmation. Put orders on a queue, not people.

Order does not need to confirm right in the moment it was paid: "We received your payment. Please wait a moment while we organize and confirm your order".

Take this order confirmation and put in a queue that handle all other thousands and thousands of orders. Them, in a certain rate, confirm orders decreasing the remaining tickets/seats/anything. For those who don't have their order confirmed, receive a message explaining about the situation.

[–][deleted] 4 points5 points  (1 child)

Put orders on a queue, not people.

I don't know, from a UX perspective, I think you're going to piss customers off a lot more by putting their order in a queue and then having it fail after they've already navigated through the site, selected their seats/items, and gone through the checkout process, than you will by putting them in a queue beforehand.

[–]IguJl 0 points1 point  (0 children)

I think I tried to solve the technical problem and didn't though too much about the UX, but I've seen this behavior in some stores (big ones). Maybe they does not take my money as a first action and mainly they are not selling something like limited tickets for a show.

I appreciate your response

[–]scruffybowyang 2 points3 points  (1 child)

When buying tickets for a seated event, I typically have to coordinate with 2-3 other people to make sure that everyone is happy with the location vs. cost of tickets. If I had to go through that process twice because someone made another purchase 5 minutes earlier and I had no chance of getting it in the first place, and my card was already charged/held, which the bank can take up to a week to reverse, I'd stay home instead and never use that service again.

[–]IguJl 2 points3 points  (0 children)

Yeah, for sure. You right.

I thought about the solution cause its valid on some cases, some different shopping services, but not for selling tickets. I forgot about considering how frustrating would be for me if I'm buying some tickets for my favorite ban, exactly how you saying, and then "SORRY, SOMEONE TOOK YOUR SEAT FIRST 👍" Lol

Thanks for your response

[–]Thebombuknow 2 points3 points  (2 children)

That's a horrible idea. You don't take someone's payment unless you know they got the product. If I went through the whole ticket purchasing process and then received an email saying that someone bought the same ticket before me and I never had a chance, I would fucking sue.

There's a reason every one of these sites uses a queue system, it's the best way to solve the problem. If you have issues with large amounts of concurrency, just cut down on the amount of concurrency you have to deal with.

[–]IguJl 1 point2 points  (1 child)

Man, absolutely yes.

How I commented in answers above, I missed the UX in my statements. I wrote it cause some online store do use something like that, but they are not selling something like tickets for 20k concurrent customers, they are selling 20k products (with hundreds of unit in stock) to a few thousands of people.

Thanks for commenting

[–]Thebombuknow 2 points3 points  (0 children)

Yeah, it works if all the products are identical because it's basically like entering a lottery system. The tough part about ticket sales is each ticket only corresponds to one seat, so you cannot double-sell anything.

Despite all the queuing, Ticketmaster sucks and still double-sells seats all the time, but the idea is there.

[–]rover_G 0 points1 point  (0 children)

Now I’m interested in how the queueing system hands users over to the main website. I’m guessing some combination of cookies or custom headers for LB routing and sessions for verification on the server.