Тестирование клиента и сервера для выбора объекта проведения экспериментов в инструментальном программном средстве имитационного моделирования на основе технологии "облачных" вычислений - page 6

А.Ю. Быков, Н.В. Медведев, Ф.А. Панфилов
6
Тестировать клиента и сервер можно в любом порядке, но следу-
ет отметить, что скорость каналов передачи данных по сети тестиру-
ется при тестировании клиента.
Описание тестовой задачи.
Будем проводить эксперименты с
типовой СМО – одноканальной СМО с неограниченной очередью,
моделируется прохождение через систему 10 000 000 заявок (число
выбрано экспериментально с учетом быстродействия вычислитель-
ных средств, чтобы продолжительность экспериментов с моделью
измерялась в секундах).
Параметры СМО: пуассоновский входящий поток заявок, среднее
время между заявками 10 секунд (λ = 0,1 заявки с); время обслужива-
ния заявки распределено по показательному закону, среднее время
обслуживания 8 секунд (μ = 1/8 заявки с); если заявка приходит в
момент времени, когда канал занят, то она становится в очередь,
длина очереди неограниченна. Провести имитационное моделирова-
ние СМО, определить параметры СМО: параметры очереди задач
(среднюю длину очереди и среднее время ожидания заявки в очере-
ди), загрузку канала обслуживания.
Для контроля полученных результатов задача имеет аналитиче-
ское решение [5]. Основные соотношения имеют следующий вид:
p
0
= 1 –
ρ
вероятность того, что в системе нет заявок
,
2
1
очер
Q
– средняя длина очереди,
2
1
очер
T
– среднее время ожидания в очереди,
K
загр
=1 –
p
0
=
ρ
– коэффициент загрузки канала обслуживания
.
Подставив заданные значения, получаем результаты:
очер
Q
= 3,2,
очер
T
=32 с,
K
загр
= 0,8.
Исходный код реализации этой системы на языке Java для вы-
полнения на сервере в виде приложения представлен в листинге 1.
Листинг 1
Исходный код реализации модели
import
 SimJava.*; 
import
 java.io.*; 
import
 java.awt.*; 
public
class
 TestModel  
extends
 Syst 
implements
 Runnable { 
 Facility 
lF
// Ссылка на канал обслуживания
 Queue 
lQ
// Ссылка на очередь
public
 TestModel(
int
 tg1) 
// Конструктор класса
 {
1,2,3,4,5 7,8,9,10,11,12,13
Powered by FlippingBook