Using a distributed component approach, propose an architecture for a national theater booking system. Users can check seat availability and book seats at a group of theaters. The system should support ticket returns so that people may return their tickets for last-minute resale to other customers.
Give two advantages and two disadvantages of decentralized and semicentralized peer-to-peer architectures.