Планирование способов применения и советы по работе с распределенными системами

Планирование распределенной системы

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

  • Из скольких подсистем состоит вся система? В любом случае подсистема является сервером с менеджером событий. В резервированной системе оба резервированных сервера рассматриваются как одна система. Удаленные станции не учитываются.
  • Передаются ли команды в удаленные системы или данные этих систем только отображаются?
  • Имеется ли отличная по своим качествам система, которая является системой более высокого уровня? Должны ли вспомогательные операторные иметь возможность связываться друг другом? Чем вы хотите управлять из центральной операторной?
  • Имеются ли системы с равными правами, которые управляют одной или несколькими полными системами (обслуживаемые или автоматические  станции)?
  • Должны ли быть доступны значения других систем только на одной системе (визуализация на специальных панелях, панели обзора) или должны отображаться и образы процесса удаленных систем?
  • Можно ли выполнять конфигурирование на всех системах или только на одной?
  • На каких системах должны оцениваться собранные данные (составление отчетов, архивирование, обработка)?
  • Какие системы используются и в какое время, а также кто пользуется системами?
  • Должны ли контролироватьсякоманды между отдельными системами?
  • Какие алармы должны отображаться и в каких системах? Кто (какой пользователь и в какой системе) также может их квитировать?

ПРИМЕЧАНИЕ

Можно по-разному сконфигурировать классы алармов на каждой системе внутри распределенной системы.

  • Какая полоса пропускания (пропускная способность сетевого соединения) доступна для соединения отдельных систем?

Советы и ограничения при работе с распределенными системами

Общие положения

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

Аппаратное обеспечение

Рекомендуется использовать следующие компоненты аппаратного обеспечения для распределенных систем (см. также Требования для «КАСКАД Цифра»):

  • Сетевые соединения между системами должны быть постоянными (выделенные линии). «КАСКАД Цифра»не поддерживает коммутируемые линии напрямую. Использование коммутируемых линий возможно только тогда, когда «КАСКАД Цифра» не видит, что они коммутируемые. Таким образом, маршрутизатор должен сам создать соединение, если данные передаются по линии, а также должен разъединить соединение по завершению лимита времени. Если вы используете коммутируемые линии, компания «СибКом»рекомендует использовать аппаратные маршрутизаторы компании Cisco.
  • При составлении распределенных систем из компьютеров необходимо учитывать не только число точек данных и динамические свойства локальных систем, но также часть локально используемых точек данных других систем. Также необходимо учитывать дополнительные коммуникационные накладные расходы.
  • Для широкомасштабного применения (проекты, в которых количество элементов точек данных превышает >20000) рекомендуется использовать компьютеры с двумя процессорами.

Архивирование/составление отчетов

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

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

Права

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

  • В сети резервированной системы производится оценка прав пользователя. Соответственно, необходимо создать одинаковых пользователей «КАСКАД Цифра» с одинаковыми правами на каждой системе.

Функции

  • Для обеспечения эффективности, функции CTRL не должны участвовать в интенсивных вычислениях, а также в запросах по всей системе. Также большое число вызовов dpConnect() в точках данных удаленной системы существенно нагружает компьютер и сеть.
  • Если вы используете dpConnect() для доступа к точкам данных, вам следует обратить внимание на то, что точки данных должны находиться в той же системе.
  • Если вы используете функции dpGet() или dpSet(), чтобы запросить или задать несколько точек данных, вам следует обратить внимание на то, что точки данных должны находиться в той же системе.
  • dpGet работает только на собственной системе. Если вы попытаетесь использовать одну функцию dpGet для отправки запросов в две системы, то она не будет работать, при этом в средстве просмотра журналов будет отображаться следующее сообщение:
    WCCOAui     (1), 2007.09.26 14:11:19.266, PARAM,SEVERE,    175, this request cannot address more than one system, DP: dist_789:ExampleDP_Arg1.:_original.._value
    WCCOAui     (1), 2007.09.26 14:11:19.266, CTRL, WARNING,    76, Invalid argument in function,
    WCCOActrl   (2), 2007.09.26 14:24:54.887, PARAM,SEVERE,    175, this request cannot address more than one system, DP: dist_789:ExampleDP_Arg1.:_original.._value
    WCCOActrl   (2), 2007.09.26 14:24:54.887, CTRL, WARNING,    76, Invalid argument in function, dpGetAll.txt    Line: 14, dpGet
     
  • Обратите внимание, что все узлы распределенной системы должны иметь одинаковое число языков.
  • Ни один из конфигурационных элементов «General» («Общее») невозможно задать из интерфейса пользователя в удаленной системе. Этими элементами являются описание, Формат, единица и псевдоним. Если вы хотите задать эти элементы, это необходимо сделать посредством контрольных точек данных, а также простого сценария выполнения программы, который исполняет команду на локальном уровне. Однако, конфигурационные элементы можно сконфигурировать по сети с помощью удаленного интерфейса пользователя (VISION, PARA, GEDI) в каждой системе.
  • Функции dpCreate()dpDelete()dpGetAlias()dpGetAllAliases()dpGetDescription()dpGetAllDescriptions()dpGetFormat() также работают и за пределами системы. Обратите внимание, что при использовании данных функций для запросов в удаленных системах, необходимо указать имя системы для точки данных.
  • Типы точек данных для модуля PARA нельзя создавать, изменять или удалять ни в каких других системах, кроме локальной.
  • Конфигурации (сохраненные настройки по умолчанию) панели алармов и событий, тренда, групповых точек данных и т.д. всегда сохраняются в той системе, в которой эти конфигурации были созданы (см. также Панель алармов и событий).
  • Суммарные алармы (алармы) не могут обрабатывать алармы из 2 или более систем одновременно.
  • Инициализация менеджера распределенной архитектуры и установление его соединения может занимать больше времени, чем запуск первого интерфейса пользователя или сценария выполнения программы (CTRL) при запуске системы. Если должны быть созданы соединения (dpConnect() с прямыми ссылками) с элементами точек данных, которые не являются локальными, необходимо учесть тот факт, что установление соединения задерживается из-за запуска менеджера распределенной архитектуры. В противном случае точки данных удаленных систем будет идентифицироваться как недоступные.
  • При использовании dpGet() в другой системе (не локальной) и дистанционное подключение не существует, dpGet возвращает значение 0 (OK). Запрос ошибки с помощью getLastError(). GetLastError() возвращает следующее сообщение об ошибке: «Message could not be sent, DP: System1:ap.:_original.._value, MAN: (SYS: 1 Dist -num 1 CONN: 1), Could not send message DP_MSG_SIMPLE_REQUEST #326»

Запросы на языке SQL

  • Невозможно выполнить запросы на языке SQL на 2 или более системах одновременно. Эту проблему необходимо решить отправкой двух или более запросов (в каждом случае) в отдельную систему. Также на панели алармов и событий такие запросы внутри распределенных систем делятся на несколько запросов.
  • Запросы выполняются с помощью соответствующего ключевого слова на языке SQL (= REMOTE, т.е. УДАЛЕННЫЙ) и за пределами системы. См. также Панель SQL. В любую систему можно отправить запрос с помощью ключевого слова REMOTE ALL (ВСЕ УДАЛЕННЫЕ).

Конфигурирование драйвера

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *