Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ИСИС Архангельский 2154 реферат

.pdf
Скачиваний:
5
Добавлен:
31.07.2024
Размер:
808.67 Кб
Скачать

Министерство цифрового развития, Связи и Массовых Коммуникаций Российской Федерации Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное

учреждение высшего образования «Московский Технический Университет Связи и Информатики» (МТУСИ)

Кафедра «Сетевые информационные технологии и сервисы»

РЕФЕРАТ

по дисциплине: Инструментальные средства информационных систем «Технология клиент-сервер. Модели клиент-сервер»

Выполнил: студент группы БСТ2154 Архангельский Максим Вячеславович Студенческий билет № ЗБСТ21001 Проверил:

Павлов С.В.

Москва 2024

 

Содержание

 

ВВЕДЕНИЕ..............................................................................................................

3

1.

Понятие клиента и сервера.................................................................................

4

2.

Технология «клиент-сервер» .............................................................................

5

 

2.1 Двухзвенная архитектура.......................................................................

7

 

2.2 Трехзвенная архитектура.....................................................................

10

3.

Модели «клиент-сервер»..................................................................................

13

ЗАКЛЮЧЕНИЕ.....................................................................................................

19

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ...........................................

20

ВВЕДЕНИЕ

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

Со временем потребовалось совершенствование самих технологий, а не только развитие аппаратуры и программного обеспечения. Были разработаны современные сетевые технологии. Одной из таких технологий является технология клиент-сервер, позволяющая пользователям сети получать быстрый доступ к необходимым ресурсам.

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

Цель данной работы — рассмотреть технологию «клиент-сервер» и её существующие модели.

3

1.Понятие клиента и сервера

Сервер (от англ. «Server» — обслуживающий). В зависимости от предназначения существует несколько определений понятия сервер.

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

2.Сервер (как программное обеспечение) — программное обеспечение, обрабатывающее запросы от клиентов (в архитектуре клиент-сервер).

3.Сервер (как аппаратное обеспечение) — компьютер (или специальное компьютерное оборудование) выделенный и/или специализированный для выполнения определенных сервисных функций.

Сервер в информационных технологиях — программный компонент вычислительной системы, выполняющий сервисные функции по запросу клиента, предоставляя ему доступ к определённым ресурсам.

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

4

2.Технология «клиент-сервер»

Технология «Клиент – сервер» представляет собой архитектуру программного комплекса, которая распределяет прикладную программу на два логически различных компонента, а именно клиент и сервер, которые взаимодействуют по схеме «запрос-ответ» решая свои определенные задачи, как показано на рисунке 1.

Рисунок 1 — Архитектура «клиент-сервер»

Клиенты и серверы могут располагаться как на одном персональном компьютере (ПК), так и на разных ПК, объеденных сетью. Также могут возникать такие ситуации, когда некоторые программные блоки одновременно выполняют функции сервера, работая с одним блоком и работу клиента работая с другим.

Основными принципами технологии «Клиент-сервер» является разделение функции приложения как минимум на три группы:

Модуль интерфейса с пользователем — это группа логикой представления. Через эту группу пользователь взаимодействует с приложением. Независимо от конкретной характеристики логики представления (командная строка, сложный графический пользовательский интерфейс, интерфейс через посредника) её главной задачей является обеспечение средств, чтобы можно было производить эффективный обмен информацией между пользователями и информационной системой.

Модуль хранения данных — группа «бизнес-логика». В бизнес-логике определяется,конкретноепредназначениеприложения(кпримеру,прикладная

5

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

Модуль обработки данных (управление ресурсами) — это группа называется логика доступа к данным или алгоритмы доступа к данным. Алгоритм доступа к данным представляет собой специфические для конкретного приложения интерфейсы взаимодействия с механизмом постоянного хранения данных представляющий подобие файловой системы или системы управления базами данных (СУБД). Данный модуль обработки данных позволяет работать в специальном для приложения интерфейсе доступа к СУБД. Используя данный интерфейс, приложение может управлять процессом соединения с базой данных и обработкой запросов к ней, а также получать результаты и переводить эти результаты обратно в специальную для конкретного приложения структуру данных.

Каждая из вышеописанных групп может работать независимо от двух других групп. Согласно разделению функций, для любого приложения выделяются следующие компоненты:

компоненты для представления данных;

прикладные компоненты;

компоненты для управления ресурсами.

6

2.1 Двухзвенная архитектура

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

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

Чтобы предотвратить сопутствующую несогласованность работы различных элементов такой архитектуры специалисты создали две модификации для двухзвенной архитектуры «Клиент – сервер»: одна модификация стала называться «Толстый клиент» («Тонкий сервер»), а другая «Тонкий клиент» («Толстый сервер»).

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

Тонкий клиент – это клиентское приложение, которое минимизирует логику и функциональность на стороне пользователя, делегируя большинство задач серверу. Он зависит от сервера для предоставления большей части функциональности. Тонкий клиент требует минимальной установки на

7

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

Вданной двухзвенной архитектуре разработчики пытались перенести процесс выполнения обработки данных на одну из двух физических частей — на сторону клиента («Толстого клиента»), или на сторону сервера («Тонкого клиента»).

Каждый из описанных подходов обладал своими недостатками. В первом подходе неоправданно перегружалась сеть, так как по ней передавались необработанные а, следовательно, избыточного размера данные. Также был усложнён процесс поддержки системы и процесс её изменения, так как,чтобызаменитьалгоритмдлявычисленияилиисправленияошибокнужно одновременно полностью заменить весь интерфейс в программах, чтобы не возникли ошибки или несогласованности в обработке данных. Если же весь процесс обработки информации выполнялся бы на сервере, то возникла бы проблема в процессе описания встроенных процедур и процесса их отладки. Систему, обрабатывающую информацию на сервере невозможно было ни как перенести на другую платформу или операционную систему, без серьезных сбоев в работе.

Втомслучаеесливсёравнобудеттребоватьсяразработкадвухуровневой классической архитектуры «Клиент – сервер», то надо знать следующее: структура архитектуры «Толстый сервер» аналогична структуре в архитектуре «Тонкий клиент», как показано на рисунке 2.

8

Рисунок 2 — Архитектура «Тонкий клиент»

У этих архитектур имеются следующие недостатки:

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

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

программа, которая написана на языке СУБД, обычно работает недостаточно надежно; ошибка, которая может в них возникнуть может привести тому, что весь сервер баз данных может выйти из строя;

получившаяся программа на языке СУБД становится полностью непереносимой на другую систему или платформу.

9

2.2Трехзвенная архитектура

Всередине 90-х годов 20-ого века получила признание среди специалистов созданная трехзвенная архитектура «Клиент – сервер», в которой информационная система делилась по своим функциональным возможностям на 3-и отдельные компонента: логика представления, бизнеслогика и логика доступа к данным. В отличие от классической двухзвенной архитектуры в трехзвенную архитектуру было добавлено дополнительное звено, которая стало называться сервер приложений. Сервер приложений предназначался для того, чтобы осуществлять бизнес-логику, полностью разгружая, клиент, который в итоге мог направлять запросы промежуточному программному обеспечению, максимально используя все имеющиеся возможности сервера.

Втрехуровневой архитектуре клиент не перегружается, выполняя функции обработчика данных, а может выполнять свою основную функцию в системе, а именно представлять информацию, которая поступает с сервера приложений. Интерфейс для такой архитектуры можно создать, используя стандартные средства Web-технологии - браузера, и языки CGI и Java. Такой подход уменьшил объёмы данных, которые передаются между клиентом и сервером приложений, что дало возможность подключать клиентские компьютеры даже к медленным линиям передачи данных (телефонные каналы). Клиентская часть стала довольно простой, благодаря чему могла воспроизводиться при помощи универсального браузера. В случае если систему надо будет всё-таки менять, то эта процедура может быть осуществлена быстро и безопасно для системы и программ.

Сервер приложений — программное обеспечение, которое представляет собой промежуточный слой между клиентом и сервером, как показано на рисунке 3.

10