Користувальницькі налаштування

Налаштування сайту


coding:java:c_development

Разработка

Техническое задание. Черновики.

Цели:

- Единая инф. база по ПК. Можно будет ее независимо вести и актуализировывать по “зоне отвестственности” / проведенным изменениям, в том числе и мониторить сами факты изменения. По факту изменений появится возможность требовать оперативное документирование сути изменений.

- Относительно свежее состояние каналов (дублирует текущую систему мониторинга). Из вариантов развития - мониторинг не только каналов, но и ПК, Серверов, оборудования и самое главное - одновременное предоставление всем сотрудникам отдела общей картины по текущему состоянию.

- Собирать дополнительно (в идеале?) можно будет:

= кто зашел на какой ПК

= сколько сотрудников работает от 1 учетной записи

= любую другую информацию, которую возможно собрать программно

- Если подключать анализ отчетов ПО типа Everest, то можно будет следить и за изменениями в аппаратном обеспечении

- Позволит иметь хоть немного актуальное кол-во активного / рабочего / ремонтируемого аппаратного обеспечения

- Благодаря возможности Java-ПО прозрачно работать с различными SQL-БД и благодаря проэкту j1c - напрямую с БД 1С, можно будет в идеале построить “мосты” например с бухгалтерией.

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

- Старшие медсестры (может не все) ведут учет кто и где их сотрудников работает в EXEL. При помощи уже существующих библиотек можно на первое время “выдергивать” из этих файлов свежую инфо, а в идеале - можно будет после создания “Автоматического Рабочего Места” можно будет иметь полную и оперативную инфо в единой базе. При необходимости - естественно, с разделением прав доступа. Это даст нам оперативную информацию кому из сотрудников звонить при необходимости что-то сделать/узнать/… по ситуации на пункте, а не искать “а кто сегодня работает”, перезванивая всем подряд, а звонить “наверняка”.

ЗЫЖ Благодаря моим ранним наработкам (в универе и ко) их после ближайшего “объединения” можно будет уже использовать в ближайшее время.

Threads Controll

- Activity Controll Контроль активности

- Count controll Контроль кол-ва

- Count Managment Учет кол-ва

- Task Management Распределение задач/заданий

= Servers Monitoring мониторинг серверов отдельный процесс ?по 1 на сеть?

= Lan Scaning Сканирование подсетей отдельный процесс ?по 1 на сеть?

= IntegNET Exchange Обмен информацией между подсетями. В т.ч. с “сенсоров”

Сравнение необходимости в “выделенных сенсорах”

- Минимизация сетевого трафика

20 Сенсоров (20 сетей * 100 систем) + ЦУ (Центр управления сенсорами)

либо

1 ЦУ * 20 сетей * 100 систем

- Единая точка отката

- Меньше полноты информации

- Проще система

- Traffic Limiting - ограничения по трафику

- Единый центр либо распредел.

- Необходимость в выделенных “сенсорах”

Блокировки и ожидания:

- Назначение исполнителя

- Добавление элемента (ПК) / изменение списка

- Обмен информацией ?

- Ограничение кол-ва межсетевых соединений - минимизация межсетевого трафика

- Ограничение кол-ва одновременных запросов ?

Traffic Limiting/Shaping/Очереди/Ограничение кол-ва соединений

- Приоритезация (сервера проверяются с мин. задержками)

- Сканирование идет в 1-2 потока

- Межсетевой обмен идет с ограничениями по кол-ву активных соединений

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

- Задержка - при первом этапе соединения с учетом очереди и приоритетов управляется сервером.

- Задержка отправляет клиента в ожидание на как минимум полученное значение от сервера.

- Клиент обслуживается сервером ТОЛЬКО при наличии свободных “слотов” - учет ограничений трафика и ко… Вне зависимости от того, что канал и сервер/сенсор сейчас смог-бы обработать и больше/быстрее - главнее не положить канал(ы) и сеть(и).

Логирование: - Через отдельный поток ? - Сообщениями ?

Сканирование VPN-подсетей - В ней ни кто не обязан присутствовать - Наличие системы в ней - симптом что ПК таки рабочий, но в отъезде. + Атрибут ПК в отъезде

Обработка клиента

- Появление клиента - Заполнение его сложности - Заполнение его паузы перед стартом (появлением - когда прийдет?) - Генерация приоритета - Включение в некую очередь на выполнение - Фиксация момента его прихода - Фиксация части выполненной его работы - Проверка, вся-ли работа выполненна. - Обновление остатка выполненнолй работы - Вычисление времени в очереди - Обновление приоритета - Установка соседей в очереди - Перемещение по очереди - Переход между очередями - Изменение приоритета - Клиент передумал или задача уже не актуальна по времени ожидания в очереди

- Генерация клиентов первоначально для тестирования по рандому - Для увеличения сложности = увеличение сложности заданий (квантов на выполнение) = уменьшение паузы между клиентами = увеличение срочности (ограничение сроков) = увеличение размера кванта времени

- Создать очередь(и) - > - Если у клиента осталась работа, то обновить положение клиента в очереди по необходимости - согласно алгоритма планирования ? - < - Сгенерировать клиентов - Выделить квант времени - В очереди с макс. приоритетом выбрать клиента - Предаставить клиенту доступ к работе (отнять от остатка работы квант времени ? ) - Если клиент отработал свое все (остаток работы стал = 0) то просчитать его (клиента) время в очереди. - Сохранить параметры клиента - Если квант времени израсходован не полностью, предоставить его остаток вслед. клиенту - >

Генерация клиентов (поиск ПК) Генерация очередей (загрузка списка подсетей) Модификация сложностей Обработка результатов (сохранение) Циклическая обработка клиентов в каждой очереди (по алгоритму/по подсети - сенсору)

Эмуляция внешнего таймера?

- По его сигналу (вызову) происходит обработка отдельного кванта времени и выделение кванта для работы в очереди - По его сигналу контроллируется “появление” клиентов в очереди готовых к работе клиентов и обработка пауз (ожидания). - проверка приоритетов теущего выполняющегося процесса и ожидающего в очередях. - Изменение актуального (текущего) процесса на выполнении при появлении/наличии более приоритетного

Списки клиентов

- Глобальный ? - Текущая очередь на каждого исполнителя - При наличии у/по каждого(му) исполнителя(ю) (сенсору) на подсеть. Упростить поиск MAC адресов - По очереди на каждую подсеть ? - Отдельная очередь для ответивших в последнюю проверку при регулярных проверках ? - ? Или это вынести просто в представлении (интерфейсе пользователю) как отдельный фильтр по атрибутам ? - отдельная очередь для непривязанных клиентов (систем) ??? - ? Или и это вынести в отдельное представление как отдельный фильтр аналогично пред. ??? - ? отдельная очередь для серверов ЭО ??? - ? отдельная очередь для видеосерверов ??? - Видео и ЭО можно сделать атрибутами - ? ПК охранника ? (есть 1)

Варианты скана сети: - psexec ? - перестал работать уже - Локальные стнации сами складируют ифн. о себе = Не все ПК в домене = Пиковые нагрузки (штормы ?!!) когда все сразу сливают свои отчеты = Можно-ли создавать задания (по времени/логону) с доп. разбросом случаеного времени запуска ?.. - Может запускать от имени чужого отдельного юзера? Завести дополнительного ? - Пытаться логиниться от списка юзверей? - Вызывать сбор инфо через PowerShell? = а везде-ли есть PowerShell ? = Это яко-бы на будущее правильнее … = Не заблокирован-ли удаленный запуск PowerShell скриптов ???

При запуске локально: - ipconfig/all - даст всю инфо про сеть. - systeminfo - обновления, аптайм, имена ПК, “родного контроллера АД”, время работы … - Теоретически хоть Everest с его отчетами … - Может еще чего есть действительно полезного?

- Атрибуты клиентов:

- IP, MAC адреса всех интерфейсов - ДНС - имя - сервер чего-то-там (mail, AD, Silab … ) - сервер ЭО - сервер Видео - Ноутбук / ПК / Неттоп - активное сетевое оборудование (нет смысла пытаться логиниться через PowerShell :) ) - сетевой принтер / МФУ - на ремонте / в дороге / списан / внесен в базу / только появился … - Где находится (регион, адрес, место, вплоть до указания угла, розетки, порта ??? - упростит работу с кабелями - скажет точный номер кабеля/порта) - когда проверялся - кто залогинен - когда впервые появился - Когда было изменение статуса, с, на какое - изменение предназначение - Хар-ки ? апгрейды, цена, комплектующие - Инфентарный(ные) номер(а), серийный - Если в ремонте / дороге … - когда планово должен появиться и где, если это в дороге. - Если списан, то каким актом, когда, почему … что куплено в замен ??? - Когда и как проходил профилактический ремонт … кто и что делал - Когда и как введен в бухгалтерии - По каким документам, когда и у кого куплен - Когда закончится гарантия - Версии ПО = Офис = Поста

= Для видео: - Плата видеозахвата

		 - какая камера
		 - сколько камер всего

Планировщик. Атрибуты.

- Накопление “товара” (создание задания)

- Время между заданями (пауза между отдельными появлениями заданий)

- Полная сложность задания (время на решени)

- Элемент перед

- Элемент вслед (за)

- приоритет

- Можно-ли прерывать?

- Оставшийся объем работы

- № текущего выделенного кванта времени (для подсчета сумм времени выполнения)

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

coding/java/c_development.txt · Востаннє змінено: 2012/10/15 21:24 (зовнішнє редагування)

Якщо не вказано інше, вміст цієї Вікі підпадає під дію такої ліцензії: CC Attribution 4.0 International
CC Attribution 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki