Архитектура клиент-сервер
Разделение приложения на отдельные задачи, размещаемые на различных платформах для большей эффективности. Как правило, это означает, что программа представления данных находится на машине пользователя (на клиенте), а программа управления данными и сами данные — на сервере. В зависимости от приложения и используемого программного обеспечения вся обработка данных может осуществляться на клиентской машине или распределяться между клиентом и сервером. Сервер соединяется со своими клиентами по сети. Серверное программное обеспечение принимает запросы от клиентского программного обеспечения и возвращает ему результаты.
Достоинства и недостатки архитектуры клиент-сервер
Системная характеристика | Значение |
Достоинства | |
Сеть небольших мощных машин | Если одна машина выйдет из строя, ваша компания все равно сможет продолжать работу |
Мощные объединения компьютеров | Система предоставляет мощность, позволяющую выполнять работу без монополизации ресурсов. У конечных пользователей достаточно мощностей для локальной работы |
Некоторые рабочие станции столь же мошны, как мэйнфреймы, но их стоимость на порядок ниже | Предоставляя вычислительные мощности за меньшие деньги, система позволяет вам тратить сэкономленные средства на другие приобретения или на увеличение ваших доходов |
Открытые системы | Аппаратуру. программы и услуги можно приобретать у разных поставщиков |
Легкость наращивания системы | Вашу систему нетрудно модернизировать, как только ваши потребности изменятся |
Индивидуальная рабочая среда клиента | Вы можете объединять компьютерные платформы, подбирая их под конкретные нужды подразделений и пользователей |
Недостатки | |
Слабая поддержка | Отдельные части системы не всегда корректно работают вместе. Бывает довольно трудно найти причину неисправности |
Недостаток инструментальных средств обслуживания | При использовании архитектуры клиент-сервер часто приходится искать инструментальные средства на рынке или разрабатывать их самостоятельно |
Необходимость переобучения | Философия программирования для Мае или Windows существенно отличается от философии программирования на языке COBOL или С |
Рассмотрим концепцию распределенной между клиентом и сервером логики приложения на примере реляционной базы данных. В этой среде сервер является сервером баз данных. Взаимодействие между клиентом и сервером осуществляется в форме транзакций, в которых клиент посылает серверу запрос и получает ответ на него.
Сервер отвечает за управление базой данных. На клиентских машинах могут располагаться различные приложения, пользующиеся базой данных. Специальное программное обеспечение связывает клиента и сервера, позволяя клиенту выполнять запросы и получать доступ к базе данных. Популярным примером такой логики является язык структурированных запросов (Structured Query Language, SQL).
Дата добавления: 2015-05-19; просмотров: 1051;