User Tools

Site Tools


mag:ds

Распределенные системы

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

  1. Процессы слабо связаны друг с другом, поэтому нет “упора” на производительность в обработке распределенных структур данных,
  2. Структура (архитектура) распределенного программного комплекса больше соответствует предметной области, а не свойствам структур данных, хотя последнее, несомненно важно,
  3. Использование стандартизованных протоколов и стандартов проектирования API (Application Programming Interface - Интерфейс прикладного программирования), ориентированных на разработку вычислительных сред и комплексов
  4. Использование методов разработки ПО, ориентированных на повторное использование и независимость от платформы разработки (структуры сети, характеристик модулей).
  5. Использование контейнеров и кубренетс-а.

Лабораторная работа

Цель лабораторной работы - разработать распределенное приложение. Оно может быть либо новое, либо созданное ранее. Сильно усложнять не надо. Пока два варианта реализации -

  1. Использование REST[ful],
  2. При помощи RabbitMQ.

Можно использовать аналогичные технологии - для первого варианта - SOAP, XML-RPC, JSON-RPC - для второго - NATS, ZeroMQ и т.п.

Продолжим оформление курса скоро

mag/ds.txt · Last modified: 2023/06/30 10:18 by eugeneai