В модели SimEvents ® блоки Entity Queue и Entity Server являются блоками хранения, содержащими объекты.
Упорядочивает объекты и сортирует их в соответствии с политиками очередей.
Серверы задерживают объекты до выполнения определенных условий.
Эта модель представляет простую систему очередей, которая генерирует объекты и помещает их в очередь в указанном порядке, обслуживает их для изменения их атрибутов и завершает их, чтобы представить их отход от строки. Дополнительные сведения о базовых системах очередей см. в разделе Модель базовых систем очередей.

При моделировании дискретных событий блок Entity Queue сохраняет объекты в течение периода времени, который не может быть определен заранее. Очередь пытается вывести объекты, когда это возможно, но ее вывод зависит от того, принимает ли дочерний блок новые объекты.

Повседневный пример очереди - люди, ожидающие регистрации в магазине. Покупатель не может заранее определить, как долго он должен ждать завершения покупки.
Например, очередь может представлять поведение:
Самолеты, ожидающие выхода на взлетно-посадочную полосу
Сообщения, ожидающие отправки
Детали, подлежащие сборке на заводе
Компьютерные программы, ожидающие выполнения
Машины, ожидающие в очереди на АЗС
Чтобы определить поведение очереди, укажите:
Емкость - количество объектов, которые очередь может хранить одновременно.
Политика сортировки очереди - указывает, какая сущность отходит первой, например FIFO (first-in-first-out), last-in-first-out (LIFO) или custom priority, если в очереди хранится несколько сущностей.
Политика перезаписи - определяет поведение, когда очередь заполнена. Можно заблокировать новую входящую сущность или принять ее, чтобы перезаписать самую старую сущность в очереди.
Дополнительные сведения о поведении очереди см. в разделе Основные системы очередей модели.
При моделировании дискретных событий сервер сохраняет объекты в течение некоторого периода времени, называемого временем обслуживания, а затем пытается вывести объект. В течение периода обслуживания блок обслуживает объект, который он хранит.

Повседневным примером сервера является человек (например, банковский кассир или розничный кассир), с которым вы совершаете транзакцию с прогнозируемой продолжительностью. Дополнительные сведения см. в разделе Основные системы очередей моделей.
Время обслуживания для каждого объекта вычисляется при его поступлении. Однако, если следующий блок не принимает поступление объекта, который завершил свою службу, сервер вынужден удерживать объект дольше.
Отличительные особенности сервера:
Количество объектов, которые он может обслуживать одновременно, может быть конечным или бесконечным.
Характеристики или способ вычисления времени обслуживания прибывающих объектов.
Позволяет ли сервер прибывающим объектам вытеснять объекты, которые уже сохранены на сервере. Дополнительные сведения см. в разделе Приоритет задачи в многозадачном процессоре.
Совет
В отсутствие прерывания сервер с ограниченной пропускной способностью не принимает вновь поступающие данные, когда он уже заполнен. Можно поместить очередь перед каждым сервером с ограниченной емкостью, чтобы установить место для объектов, которые будут оставаться, пока они ожидают, когда сервер примет их. В противном случае ожидающие объекты могут храниться в различных расположениях модели, и поведение может быть более сложным для прогнозирования или анализа.
Сервер можно использовать для представления реальных систем, таких как:
Лицо (например, банковский кассир), которое выполняет транзакцию с каждым прибывающим клиентом
Передатчик, который обрабатывает и отправляет сообщения
Машина, которая собирает детали на заводе-изготовителе
Компьютер, выполняющий программы
Блок обработки в приложении производственной линии
Процессор в сетевом приложении
В некоторых случаях сервер не представляет реальную систему. Обычный метод моделирования включает в себя нулевую задержку длительности (то есть бесконечный сервер, время обслуживания которого равно нулю), чтобы обеспечить место для нахождения объекта, чтобы манипулировать его атрибутами.
События и действия с событиями можно использовать для управления атрибутами сущности и создания пользовательского поведения в системе организации очередей. Дополнительные сведения о действиях с событиями см. в разделе События и действия с событиями.
Предположим, что необходимо изменить атрибуты объекта, когда объекты входят или выходят из очереди объектов или блока сервера объектов. Можно использовать действия, вызываемые такими событиями, как вход в блок, выход из блока или завершение службы. Дополнительные сведения см. в разделе Основные системы очередей моделей. Действия с событиями можно также использовать для создания пользовательских шаблонов маршрутизации сущностей. Дополнительные сведения см. в разделе Использование действий события очереди для моделирования резервуара хранения.
Последовательное соединение двух пар очередь-сервер может представлять последовательные операции над объектом. Например, можно моделировать последовательную обработку деталей на сборочной линии двумя станками.

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

Однако при отсутствии очереди, если первый сервер завершает свою службу на объекте и если второй сервер доступен для принятия нового объекта:
Объект должен оставаться на первом сервере после окончания службы.
Первый сервер не может принять новую сущность для обслуживания, пока не станет доступен второй сервер.
Подключение двух последовательных очередей может оказаться полезным при использовании объектов для моделирования элементов, для которых во время хранения используются два различных набора физических условий. Например, дополнительные инвентарные позиции, которые переполняют одну область хранения, должны оставаться в другой области хранения, где менее хорошо регулируемая температура влияет на долгосрочное качество позиций.
Моделирование двух областей хранения как отдельных блоков очереди облегчает просмотр средней продолжительности времени, в течение которого объекты остаются в области хранения переполнения. Дополнительные сведения см. в разделе Основные системы очередей моделей.
Соединение двух пар очередь-сервер параллельно, в которых объекты направляются к одной или к другой паре очередь-сервер, может представлять собой альтернативные операции. Например, можно смоделировать, как транспортные средства ждут в очереди одну из нескольких платных будок на платной площади. В этом случае модель должна иметь логику принятия решения, возможно, в виде переключателя, предшествующего этому шаблону. Пример см. в разделе Обслуживание клиентов с высоким приоритетом путем сортировки объектов на основе приоритета.

Параллельное соединение двух пар очередь-сервер, в которых копия каждого объекта поступает в каждую, может представлять собой сценарий многоадресной передачи, такой как отправка сообщения нескольким получателям. Следует отметить, что копирование объектов может оказаться нецелесообразным в некоторых приложениях. Пример см. в разделе Широковещательные объекты с использованием многоадресной рассылки объектов.
Если требуется смоделировать более сложные блоки хранения объектов и расширить поведение блоков, предоставляемых библиотекой SimEvents, используйте блок системы дискретных событий MATLAB и блок диаграммы дискретных событий.

Блок Система дискретных событий MATLAB расширяет системные объекты для создания пользовательских блоков SimEvents в модели. Дополнительные сведения о разработке пользовательских блоков SimEvents см. в разделе Создание пользовательских блоков с использованием системного блока дискретных событий MATLAB.
Блок дискретной диаграммы событий использует диаграммы Stateflow ® и предоставляет графический язык для создания пользовательских блоков хранения в модели. Дополнительные сведения см. в разделе Очистка объектов от сервера очереди.

Очередь сущностей | Сервер сущностей