Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по информатике.doc
Скачиваний:
16
Добавлен:
01.05.2025
Размер:
615 Кб
Скачать
☆

23. Архитектура «клиент-сервер» (стр. 126-129).

Архитектура клиент-сервер - архитектура распределенной вычислительной системы, в которой приложение делится на клиентский и серверный процессы. Клиент-сервер — вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемыми серверами, и заказчиками услуг, называемыми клиентами. Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.

Преимущества: (1) Делает возможным, в большинстве случаев, распределение функции вычислительной системы между несколькими независимыми компьютерами в сети. Это позволяет упростить обслуживание вычислительной системы. В частности, замена, ремонт, модернизация или перемещение сервера не затрагивают клиентов. (2) Все данные хранятся на сервере, который, как правило, защищён гораздо лучше большинства клиентов. На сервере проще обеспечить контроль полномочий, чтобы разрешать доступ к данным только клиентам с соответствующими правами доступа. (3) Позволяет объединить различные клиенты. Использовать ресурсы одного сервера часто могут клиенты с разными аппаратными платформами, операционными системами и т. п.

Недостатки: (1) Неработоспособность сервера может сделать неработоспособной всю вычислительную сеть. (2) Поддержка работы данной системы требует отдельного специалиста - системного администратора. (3) Высокая стоимость оборудования.

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

Различают:

  1. Файловый сервер - узел вычислительной сети, реализующий начальный уровень архитектуры клиент-сервер. Обычно файловый сервер работает под управлением развитой многозадачной сетевой операционной системы. Файловый сервер: - обеспечивает управление доступом к файлам и базам данных; - предоставляет в общее пользование дисковое пространство, принтеры модемы и другие ресурсы. Количество клиентов ограничено десятками. Плюсы: - низкая стоимость разработки; - высокая скорость разработки; - невысокая стоимость обновления и изменения ПО. Минусы: - низкая производительность (зависит от производительности сети, сервера, клиента); - плохая возможность подключения новых клиентов; - ненадежная система; - ограниченность языка; - негибкость среды разработки.

  2. Сервер БД - Сервер БД обслуживает базу данных и отвечает за целостность и сохранность данных, а также обеспечивает операции ввода-вывода при доступе клиента к информации. Обслуживает базы данных и обеспечивает целостность и сохранность данных при их хранении, а также операциях ввода-вывода при доступе клиента к информации. Сервер базы данных - один из ключевых компонентов в архитектуре вычислительной сети типа "клиент-сервер", в которой пользовательский интерфейс располагаются на менее мощной машине-клиенте, а функции Систему Управления Базами Данных (СУБД) размещены на мощном сервере. Сервер баз данных работает под управлением серверной операционной системы и получает клиентские запросы на языке SQL. Серверам баз данных требуется большая мощность, так как на них ложится задача не только по хранению информации, но и работа с базами данных организации, обработка запросов пользователей, резервное копирование и прочие задачи. Поэтому они оснащены новейшими высокопроизводительными четырехядерными процессорами Intel® Xeon® Processor, которые позволяют поднять работу с базами данных на новый уровень.

  3. Сервер приложений - Сервер приложений - сервер, предназначенный для выполнения прикладных процессов. Сервер приложений: - взаимодействует с клиентами, получая задания; и - взаимодействует с базами данных, выбирая данные, необходимые для обработки. Это программная платформа (software framework) предназначенная для эффективного исполнения процедур (программ, механических операций, скриптов) которые поддерживают построение приложений. Сервер приложений действует как набор компонент доступных разработчику программного обеспечения через API (Интерфейс прикладного программирования) определенный самой платформой. Для веб-приложений, эти компоненты обычно работают на той же машине где запущен веб-сервер, и их основная работа обеспечивать создание динамических страниц. Однако современные серверы приложений нацелены гораздо больше не на то чтобы генерировать веб-страницы, а на то чтобы выполнять такие сервисы как кластеризация, отказоустойчивость и балансировка нагрузки, таким образом позволяя разработчикам сфокусироваться только на реализации бизнес-логики. Обычно этот термин относится к Java серверам приложений. В этом случае сервер приложений ведет себя как расширенная виртуальная машина для запуска приложений, прозрачно управляя соединениями с базой данных с одной стороны и соединениями с веб-клиентом с другой. Преимущества серверов приложений: Целостность данных и кода. Выделяя бизнес логику на отдельный сервер или на небольшое количество серверов, могут быть гарантированы обновления и улучшения приложений для всех пользователей. Не существует риска того, что старая версия приложения получит доступ к данным или сможет их изменить старым несовместимым образом. Централизованная настройка и управление. Изменения в настройках приложения, таких как изменение сервера базы данных или системных настроек, могут производиться централизованно. Безопасность. Сервер приложений действует как центральная точка, используя которую поставщики сервисов могут управлять доступом к данным и частям самих приложений, что считается преимуществом защиты. Её наличие позволяет переместить ответственность за аутентификацию с потенциально небезопасного уровня клиента на уровень сервера приложений, при этом дополнительно скрывая уровень базы данных. Поддержка транзакций. Транзакция представляет собой единицу активности, во время которой много изменений ресурсов (в одном или различных источниках) может быть выполнено атомарно (как неделимая единица работы). Конечные пользователи при этом могут выиграть от стандартизованного поведения системы, от уменьшения времени на разработку и от снижения стоимости. В то время как сервер приложений выполняет массу нужного генерирования кода, разработчики могут сфокусироваться на бизнес логике.

  4. Сервер печати - Сервер печати используется для предоставления и управления доступом пользователей к принтерам предприятия. Роль сервера печати позволяет управлять принтерами через веб-обозреватель, печатать на URL-принтере, настраивать отказоустойчивые кластеры сетевой печати, а также публиковать принтеры в службе каталога (Active Directory), чтобы пользователи могли искать принтеры в зависимости от месторасположения, цвета и скорости.

  5. Коммуникационный сервер - обеспечивает доступ любых удаленных компьютеров к информационным ресурсам сети, используя модем и телефонные линии связи

  6. Интернет-сервер (WEB-сервер)– служит для организации и размещения WEB-страниц и обеспечения WWW-сервиса Интернета.

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