Материал: Архитектура информационных систем

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Figure 3. Архитектура "клиент-сервер"

Преимуществами данной архитектуры являются:

· возможность, в большинстве случаев, распределить функции вычислительной системы между несколькими независимыми компьютерами в сети;

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

·        поддержка многопользовательской работы;

·        гарантия целостности данных.

Недостатки:

· неработоспособность сервера может сделать неработоспособной всю вычислительную сеть;

·        администрирование данной системы требует квалифицированного профессионала;

·        высокая стоимость оборудования;

·        бизнес логика приложений осталась в клиентском ПО.

При проектировании информационной системы, основанной на архитектуре "клиент-сервер", большее внимание следует обращать на грамотность общих решений. Технические средства пилотной версии могут быть минимальными (например, в качестве аппаратной основы сервера баз данных может использоваться одна из рабочих станций). После создания пилотной версии нужно провести дополнительную исследовательскую работу, чтобы выяснить узкие места системы. Только после этого необходимо принимать решение о выборе аппаратуры сервера, которая будет использоваться на практике.

Увеличение масштабов информационной системы не порождает принципиальных проблем. Обычным решением является замена аппаратуры сервера (и, может быть, аппаратуры рабочих станций, если требуется переход к локальному кэшированию баз данных). В любом случае практически не затрагивается прикладная часть информационной системы.

Также данный вид архитектуры называют архитектурой с "толстым" клиентом.

Многоуровневый "клиент-сервер"

Многоуровневая архитектура клиент-сервер (Multitier architecture) - разновидность архитектуры клиент-сервер, в которой функция обработки данных вынесена на один или несколько отдельных серверов. Это позволяет разделить функции хранения, обработки и представления данных для более эффективного использования возможностей серверов и клиентов.

Среди многоуровневой архитектуры клиент-сервер наиболее распространена трехуровневая архитектура (трехзвенная архитектура, three-tier), предполагающая наличие следующих компонентов приложения: клиентское приложение (обычно говорят "тонкий клиент" или терминал), подключенное к серверу приложений, который в свою очередь подключен к серверу базы данных.

Figure 4. Многоуровневый "клиент-сервер"

Плюсами данной архитектуры являются:

· клиентское ПО не нуждается в администрировании;

·        масштабируемость;

·        конфигурируемость - изолированность уровней друг от друга позволяет быстро и простыми средствами переконфигурировать систему при возникновении сбоев или при плановом обслуживании на одном из уровней;

·        высокая безопасность;

·        высокая надежность;

·        низкие требования к скорости канала (сети) между терминалами и сервером приложений;

·        низкие требования к производительности и техническим характеристикам терминалов, как следствие снижение их стоимости.

Минусы:

· растет сложность серверной части и, как следствие, затраты на администрирование и обслуживание;

·        более высокая сложность создания приложений;

·        сложнее в разворачивании и администрировании;

·        высокие требования к производительности серверов приложений и сервера базы данных, а, значит, и высокая стоимость серверного оборудования;