Bu işlemleri şu şekilde yapabilirsin. bir php sayfası oluşturur bu sayfada tüm rezervasyonları kontrol ettirirsin. kapanması gerekenleri buldurur ve güncelletip kapattırırsın. bunu da cron job'a bağlarsın. 10dk-20dk artık ihtiyacına göre sorgulatırsın.

ne olur ne olmaz diye de rezervasyon sayfasına da bir sorgu eklersin. eğer aynı şartlarda biri siteye giriş yapmaya kalkarsa o rezervasyonlara baktırırsın. kapanması gereken varsa kapattırısın.

örnek vermek gerekirse; ben uçak bilet satışı diye düşündüm. adam girdi siteye. istanbul-ankara uçusu saat 16:30'daki uçağı sorgulattı boş yer varmı diye. o sırada istanbul-ankara 16:30 uçağı'nın rezervasyonları sorgulanıyor, eğer süresi dolmuş rezervasyon varsa mysql update'den kapatılıp kullanıcıya boş olarak gösteriliyor.

bu şekilde çözülebileceğini düşünüyorum.