ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 июля
674385
Evgeny_CD, Архитектор (14.05.2016 00:38, просмотров: 758)
Симулятор на основе контейнерной виртуализации. -> http://caxapa.ru/655813.html
http://caxapa.ru/674381.html
Пусть мы задумали сделать некую очень большую и сложную систему. Которую мы разбили на блоки, и осмысленно структурировали потоки данных и управления в некоей аццкой портянке А0 на стене. Преждем чем отливать в граните - хорошо бы симульнуть всю систему целиком. Это можно сделать уже сейчас многими способами, но я хочу предложить способ синтетического порта, чтобы симулятор работал на основе боевого кода, а не некоей абстрактной модели. Пусть у нас есть некий виртуальный switch, который коммутирует UDP макеты между контейнерами. Очень быстро, zero copy и все такое. Как я понимаю, такое есть в любой системе виртуализации. мы настраиваем его так, чтобы он поддерживал потоки данных и управления из нарисованной нами портянки. Т.е. сотня вирутальных портов и куча правил маршрутизации. А теперь эти "UDP порты" мы втыкаем в дырки контейнеров, а в каждом контейнере живет боевой код в обрамлении синтетических драйверов, и код понятия не имеет, что он живет в симуляторе. А дрейвера симулируют любую периферию. Контейнеры изолированны друг от друга, и хакнуть ничего невозможно (теоретически). И разработки могут относительно безболезненно выкладывать в контейнеры свой бинарный синтетичесий код, кажды в своей контейнер. Далее, когда все контейнеры готовы, мы запускаем работу полного симулятора системы, и ведем большой лог - как пакетики бегали внутри виртуального свитчика. А теперь гнусный капитализм. Если мы все сделали правильно, то на роль основных контейнеров претендуют по несколько команд. Мы устраиваем тестирование с разными вариантами "кубиков системы" и выбираем лучшее решение :) В качестве аппаратной платформы 16 ядерные (32 потока!)Intel® Xeon® Processor D-1587 (D-1571 и D-1577). --> И получаем очень мощную симуляционную платформу за 200кр, что даже для индивидума реально. Или можно сделать на последних Xeon E5 Intel® Xeon® Processor E5-2650 v4 (30M Cache, 2.20 GHz) 12 ядер http://ark.intel.c …-v4-30M-Cache-2_20-GHz http://www.regard. …atalog/tovar219506.htm - 92 кр Intel® Xeon® Processor E5-2650L v4 (35M Cache, 1.70 GHz) 14 ядер http://ark.intel.c …-v4-35M-Cache-1_70-GHz http://www.kns.ru/ …2650-v4-oem/goods.html 94кр Затраты программистского и админского труда будут решающими в этом проекте, железо по стоимости ничего ограничивать не будет. Критика подхода?