Slot logic and capacities
An event registration without capacity check is a time bomb. As soon as the first viral tweet hits the registration form, three hundred sign-ups for one hundred slots arrive in an hour — and the organizer faces an ugly task. A hard upper limit per slot plus server-side check on submit is mandatory.
Technically that means: on registration submit a database transaction checks "is slot X still free?" and in the same breath "book slot X for this person". Atomically — otherwise race conditions occur where two people book the last seat simultaneously. With multiple workshops inside one event this applies per workshop separately. Conditional logic can show or hide the workshop slot depending on availability so that full slots are not selectable at all.
Capacities should plan a small reserve. For an event with 100 slots, 105 sign-ups are usually safe because typically 5-15 percent no-show rates are expected. For paid events the no-show rate drops to 1-3 percent — calculate tighter here. This reserve should be configurable as a parameter in the calculation engine, not hardcoded.