@startuml
scale 0.8
'Параметры для интерфейсов
skinparam interface {
  backgroundColor #1a2eff
  borderColor black
}
'Прямые стрелки
skinparam linetype ortho
'Параметры для компонентов
skinparam component {
  FontSize 13
  ArrowFontStyle Bold
  FontName Times New Roman
  BorderColor black
  BackgroundColor #e6ffef
  ArrowFontName Courier
  ArrowColor #111111
  ArrowFontColor #111111
}


frame Watson_scheme #ededed {

package "Site" #lightblue {
  [Акции и скидки]  -l-> kafka
  [rnames] --> kafka
  [Распродажи] --> kafka
  [Теговые страницы] --> kafka
  [Скрытие категорий \nпроизводителей] -l-> kafka
  [Заголовоки страниц\n категорий] -l-> kafka
  [Отзывы, просмотры,\n заказы и seo сортировка] --> kafka
}

package "PDM" #lightblue {
    [Товары] --> http_pdm : Каждые 10 минут
    [Производители] --> http_pdm: Каждые 10 минут
    [Категории] --> http_pdm: Каждые 2 часа
    [Технические характеристики] --> http_pdm: Каждую минуту
}

package "PriceFormer" #lightblue {
    [Цены] -up-> http_price_former
    [Типы цен] -up-> http_price_former
}

package "HamletX10" #lightblue {
    [Информация о наличии в магазинах] -> http_hamlet
}

package "Shcat" #lightblue {
    [Факт наличия \nостатков в регионе] -up-> http_shcat
}

package "Officer" #lightblue {
    [ID магазинов] -up-> http_officer
    [AregID] -up-> http_officer
}

database "MySql" #turquoise {
    [database]
}

'Site
kafka --> [database]: Чтение топиков из kafka

'PDM
http_pdm --> [database]

'HamletX10
http_hamlet -up--> [database]: Каждый день

'Officer
http_officer -up--> [database]: Каждую неделю

'Shcat
http_shcat -up--> [database]: Запускается вручную

'PriceFormer
http_price_former -up--> [database]: Каждую минуту
}
@enduml