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