![]() КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Подходы «мощный сервер» и «мощный клиент».При разбиении алгоритмов обработки данных необходимо синхронизировать поведение обеих частей системы. Все разработчики должны иметь полную информацию о последних изменениях, внесенных в систему, и понимать эти изменения. Это создает большие сложности при разработке клиент-серверных систем, их установке и сопровождении, поскольку необходимо тратить значительные усилия на координацию действий разных групп специалистов. В действиях разработчиков часто возникают противоречия, а это тормозит развитие системы и вынуждает изменять уже готовые и проверенные элементы. Чтобы избежать несогласованности различных элементов архитектуры, пытаются выполнять обработку данных на одной из двух физических частей - либо на стороне клиента ("мощный" клиент), либо на сервере ("мощный" сервер). На рисунке показан переход от подхода "мощный сервер" (слева) к подходу "мощный клиент" (справа). В рамках подхода «мощный» сервер почти вся работа осуществляется на сервере. В рамках подхода «мощный» клиент все приложения находятся на клиентской стороне, а по сети к серверу могут посылаться лишь SQL-вызовы.
Достоинства «мощного» сервера: 1. Размещение программы максимально близко к данным значительно снижает объем пересылаемой информации. 2. Использование такого инструмента баз данных, как хранимые процедуры, повышает целостность и безопасность данных, в то же время уменьшая загруженность разработчика приложений. 3. Приложения показывают лучшую масштабируемость по производительности. Недостатки "мощного" сервера: • усложняется реализация, так как языки типа SQL не приспособлены для разработки распределенного ПО и нет хороших средств отладки; • производительность программ, написанных на языках типа SQL, значительно ниже, чем созданных на других языках, что имеет важное значение для сложных систем; • программы, написанные на СУБД-языках, обычно работают недостаточно надежно; ошибка в них может привести к выходу из строя всего сервера баз данных; • получившиеся таким образом программы не полностью переносимы на другие системы и платформы.
Достоинства «мощного» клиента вытекают из принципов реинжиниринга, реализация которых приводит к необходимости использовать мощные рабочие станции. 1. Высокоразвитый графический интерфейс. 2. Возможностей одновременной работы с несколькими приложениями. 3. Высокая скорость работы. Недостатки: • сложность администрирования; • сложность обновления ПО, поскольку его замену нужно производить одновременно по всей системе, иначе могут возникнуть ошибки или несогласованность данных; • сложность распределения полномочий, так как разграничение доступа происходит не по действиям, а по таблицам; • перегрузка сети вследствие передачи по ней необработанных, а значит, избыточных,данных; • слабая защита данных, поскольку сложно правильно распределить полномочия. Логические компоненты приложений «клиент-сервер» Один из основных принципов технологии "клиент-сервер" заключается в разделении функций стандартного приложения на три группы, имеющие различную природу. Первая группа - это функция ввода и отображения данных. Ко второй группе относятся фундаментальные функции хранения и управления данными (базами данных, файловыми системами и т.д.). Третья группа объединяет чисто прикладные функции, характерные для данной предметной области. Наконец, В соответствии с этим в любом приложении выделяются следующие логические компоненты: • компонент представления, реализующий функции первой группы; • компонент доступа к информационным ресурсам или менеджер ресурсов, поддерживающий функции второй группы; • прикладной компонент, поддерживающий функции третьей группы. В связи с этим разделением выделяются три модели реализации приложений в рамках технологии «клиент-сервер»: • модель доступа к удаленным данным (Remote Date Access - RDA); • модель сервера базы данных (DateBase Server - DBS); • модель сервера приложений (Application Server - AS).
|