Технология клиент-сервер позволяет преодолеть непроизводительную пересылку больших информационных потоков в сети. Это достигается за счет разделения программы на две части: клиентскую и серверную.
Клиентская часть (далее просто клиент) устанавливается на компьютере рабочего места, а серверная (сервер) — на сетевом сервере. Когда клиенту нужны какие-либо данные, он посылает серверу запрос. В запросе формулируется, какая именно информация требуется. Сервер выбирает из общей базы данных только те данные, которые необходимы, и пересылает их клиенту.
Поскольку серверная часть программы устанавливается на сетевом сервере, где обычно и хранится общая база данных, то лишняя информация по каналам сети не передается. За счет этого при обслуживании большого числа пользователей общая производительность системы существенно повышается по сравнению с применением систем, построенных в архитектуре файл-сервер.
На западе использование технологии клиент-сервер при построении систем обработки учетной информации давно стало стандартом де-факто. В России производители наиболее распространенных бухгалтерских программ в силу ряда обстоятельств обратились к ней относительно недавно. На настоящий момент почти все ведущие разработчики предлагают клиент-серверные разновидности своих программных продуктов. В то же время, следует отметить, что большинство этих программ выросло из систем, построенных по технологии файл-сервер, и потому реализация технологии клиент-сервер нередко достигается за счет искусственных вспомогательных механизмов, не позволяющих полностью раскрыть ее потенциальные возможности.
Технология клиент-сервер может быть реализована несколькими способами. Не вдаваясь в технические подробности, их можно разделить на две группы в зависимости от степени разделения функций между клиентской и серверной частями системы. Это модель «толстого» клиента и модель «тонкого» клиента.
