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

Методическое пособие 458

.pdf
Скачиваний:
15
Добавлен:
30.04.2022
Размер:
1.6 Mб
Скачать

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

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

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

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

(s3, Т3=7).

Допустим, покупатель приобрел товар у заказчика продукции. Если предприятие уведомило заказчика продукции о браке своевременно, то покупатель не понесет убытка. Таким образом, имеется следующий хронологический порядок событий: s1, s2, s3.

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

30

описанная выше, имеет место вследствие того, что хронологический порядок событий был нарушен: s1, s3, s2.

Пусть эти процессы исполняются на различных компьютерах. При параллельном протекании логических процессов могут наблюдаться различия в скорости изменения локального модельного времени в разных процессах. Такая ситуация объяснима: число событий на одном отрезке модельного времени может быть разным, либо на выполнение событий требуется различный объем процессорного времени, и др. Возможно, что при получении сообщения одним логическим процессом от другого логического процесса локальное модельное время процесса отправителя оказывается меньше локального модельного времени процесса получателя. Иначе говоря, логический процесс «изменил свое прошлое». Это явление называют «парадоксом времени». Оно свойственно распределенному имитационному моделированию (РИМ) и приводит к неправильному выполнению процессов. При последовательном РИМ подобные трудности обычно не возникают. Нарушение хронологии может быть вызвано тем, что при РИМ время скорость движения процессов различна. Допустим, процесс, отображающий работу предприятия, выполняется на процессоре, перегруженном задачами. В этом случае сообщение о некачественной продукции к заказчику поступит с опозданием. Процесс, отображающий поведение покупателя, выполняется на процессоре, который простаивает. Если исходить из реализации модели, то получается, что покупатель успеет приобрести некачественный товар. Алгоритм РИМ должен быть разработан так, чтобы не возникали нарушения хронологии событий. Для корректной работы со временем разрабатывается специальное достаточно сложное программное обеспечение, реализующее синхронизацию локального модельного времени логических процессов.

Алгоритмы синхронизации РИМ разделяются на кон-

сервативные и оптимистические. Чтобы понять их разли-

чия, рассмотрим последовательность событий из первого

31

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

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

Таким образом, консервативные алгоритмы отлича-

ются задержкой выполнения ряда логических процессов и отсутствием парадоксов времени. Оптимистические алгоритмы базируются на отрицании парадоксов времени – можно вернуться и все исправить. Если при РИМ имеют место нарушения хронологического порядка событий, то оптимистические алгоритмы осуществляют "возврат" логического процесса до значения модельного времени отправки сообщения, вызвавшего нарушение хронологии. Эффективность использования и быстродействие рассмотренных выше алгоритмов зависят от ситуации.

Рассмотренные выше технологии широко используются для моделирования различных производственных систем.

32

5. ОСНОВНЫЕ ТРЕБОВАНИЯ К РАСПРЕДЕЛЕННЫМ ИНФОРМАЦИОННЫМ СИСТЕМАМ

5.1. Перечень основных требований к распределенным информационным системам

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

гибкость;

прозрачность;

открытость;

масштабируемость (расширяемость).

5.2. Гибкость

Гибкость – это характеристика системы, отражающая ее возможности приспосабливаться к различным потребностям (задачам).

Гибкая производственная система (ГПС) – это сово-

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

Например, ГПС является автоматизированная линия по формовке творожных сырков, которую можно перенастраивать на формовку конфет и других кондитерских изделий.

Линии по выпуску макаронных изделий также являются ГПС, поскольку они достаточно легко переконфигуриру-

33

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

В ГПС могут объединяться различные станки, прессы, установки для сварки, роботы и другое необходимое для производства оборудование. Управление ГПС обычно осуществляется с применением компьютеров и промышленных контроллеров.

Системы автоматизированного управления предпри-

ятием (ERP) имеют модульный принцип построения, что позволяет достаточно гибко их перенастраивать под потребности различных предприятий и организаций. К минимальному стандартному набору модулей ERP относятся следующие подсистемы: «Производство», «Финансы», «Сбыт», «Cнабжение», «Cклады», «Транспорт» и «Информационная система руководителя». Стандарт MRPIIStandard System включает описание 16 групп функций системы, которые и компонуются в зависимости от потребностей предприятия. Примерами ERP являются системы 1С, Oracle, SAP.

5.3. Прозрачность

Некоторый аспект распределения называется про-

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

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

34

Прозрачность местоположения направлена на скры-

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

Прозрачность переноса означает скрытие факта физического перемещения ресурса. В то же время изменение местоположения не оказывает влияния на доступ к ресурсу. Например, сетевой диск можно «переместить» с одного компьютера на другой, но пользователь будет обращаться к нему, как к обычному локальному диску и не заметит переноса.

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

Прозрачность реплекации (дублирования) означает скрытие факта наличия копий ресурса. В РС, как правило, происходит обращение к наиболее близкой реплике.

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

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

35

Прозрачность сохранности указывает на скрытие ре-

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

Не все из рассмотренных выше аспектов должны полностью реализовываться в РС, поскольку обеспечение прозрачности влияет на производительность системы.

5.4. Открытость

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

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

5.5. Масштабируемость

Масштабируемость (возможность расширения)

это способность системы, используемая для увеличения производительности при добавлении ресурсов.

Показатели, позволяющие измерить масштабируе-

мость:

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

территориальность – пользователи и ресурсы могут быть разнесены в пространстве;

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

36

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

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

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

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

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

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

37

можности избежать ожидания ответа на запрос от удаленого сервера.

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

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

Распределение – это разделение компонентов на мелкие составляющие с последующим размещением этих частей по системе. В настоящее время архитектуры РС предполагают многозвенность.

Если логически различные компоненты размещают на разных ЭВМ, то подобное распределение называется верти-

кальным.

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

Например, объектом, разработанным с использованием технологий горизонтального распределения, является вебсайт, реплецированный на несколько локальных ЭВМ. Серверы такой РС содержат одинаковые веб-страницы. Если ка- кая-то веб-страница обновляется, то ее копии тут же репле-

38

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

Ещё одним примером использования горизонтального распределения являются системы, использующие технологии облачных вычислений.

Прием и обработка

Реплецированные веб-сайты, cодер-

запросов

жащие одинаковые веб-страницы

 

 

Сервер

распреде-

ления

Интернет

Рис. 3. Функционирование реплецированного веб-сервера

39