forked from ivashchenko-leo/GRID-project
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtz021014.txt
148 lines (79 loc) · 2.94 KB
/
tz021014.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
Протокол взаимодействия
Общие данные:
-- Клиент - вычислительный узел и узел хранения
-- запрос на регистрацию в системе (кто, какой IP)
server.lru/api/register.xml?ip=127.0.0.1&name=Computer7
-- запланированное отключение (с возможностью сохранить данные)
server.lru/api/shutdown.xml?id=73
-- запрос на получение задания
server.lru/api/getTask.xml?id=73
-- запрос на передачу задания
server.lru/api/setTaskDone.xml?id=73&task_id=105
Клиент-консоль:
Шантин Виктор
Стрельников Андрей
-- сообщить статус
-- обзор участников (PING - проверка готовности наших узлов, получение статуса вычислений, кто есть, кто отключен)
-- состояние задачи
-- наличие ресурса для выполнения задачи
-- принудительная выдача задачи/подзадачи (резервирование задачи)
-- увеличение резерва подзадачи (выдача задачи еще n-му кол-ву узлов)
?-- проверка наличия ресурса для хранения данных
-- запрос на передачу пакета данных на хранение
-- опрашивает ноды каждые 20 сек. (запрос статуса)
?-- информирование об отключении
?-- отключение участника
Справочно:
Клиент-консоль может быть несколько
Клиент-диспетчер
Опенько Дмитрий
Когель Николай
Хафизов Тимур
ПОКА ГЛАВНОЕ ТОЛЬКО:
-- ВЫДАТЬ ЗАДАЧУ СЕРВЕРУ
-- выдать задачу другому участнику
-- принять с него данные
-- инициализировать на узле ноду определенного типа
Клиент-данные (вычисления):
Баева Мария
Плинто Юрий
Васильев Андрей
-- сообщить статус
-- запросить задание на вычисление
-- принять задание на вычисление от сервера (вычисление суммы или расчет по итерациям)
-- отправить результат вычислений
-- принять пакет данных на хранение
-- каждые 20 сек. опросить сервер "кагдила", информирует его о своем состоянии
-- отключиться (по собственной инициативе)
?-- отключиться по требованию кл-консоли
Справочно:
?- Парсер скрипта (на котором формируется задача для вычислений)
- данные отправляются методом POST в виде файла
Формат команд (синтаксис):
-- Пакет на обработку
FOR I:=60 TO 70
SUMM (Y = X^2);
FOR I:=70 TO 80
Y = X^2;
Клиент хранения:
Гуляев Денис
Кирносов Александр
-- сообщить статус
-- отправить задачу на выполнение
-- файл разбивается на ?"100500" частей. У каждой части свой token в нем кодируется вся информация о файле и его части.
-- отправить задачу на резервирование части
-- получить часть данных (скачать с сервера)
Сервер:
Иващенко Леонид
Дистергов Артур
-- После регистрации ноды сервер выдает token - по которому он может ее индентифицировать
(сохраняется в БД)
-- запрос задания от клиента-данных
-- выдает свободное требующее выполнения (очередное) задание на обработку данных
-- выдача порции данных нодам (или ответ, что нет задания)
-- принять результаты, выдать задание, показать статистику в XML и ее же на странице
Справочно:
Получение статистики:
-- server.lru/api/getStat.xml
Визуализация статистики:
-- server.lru/stat/