способ организации взаимодействия программ или компонентов многокомпонентной программы, подразумевающий наличие программы или компонента программы, называемого сервером, и одной или несколько других программ или компонентов, называемых клиентами. Клиент имеет возможность асинхронно для сервера инициировать выполнение процедур сервера и получать результаты их выполнения. Как правило, архитектура клиент-сервер обеспечивает возможность нескольким клиентам взаимодействовать с сервером параллельно и независимо друг от друга.