URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8579
[ Назад ]

Исходное сообщение
"Проектирование модульной программы"

Отправлено Ivanoff , 07-Янв-10 14:42 
Здравствуйте, мне нужно реализовать сетевую программу которая взаимодействует со своими копиями на других хостах, т.е. в целом получается некая распределенная система.

Схему  работы  я представляют так:
- Считываем конфиг, из него получаем адреса узлов с которыми будем взаимодействовать и другие настройки
- Открываем прослушивающий сокет, на который будут поступать запросы от других "копий"
- Проверяем доступность узлов(т.е. запущенны ли на других узлах "копии")
- Основной цикл работы:
   -- происходит блокировка на функции select() в ожидании входящих соединений, или  истечение времени ожидания
   -- Если есть новое соединение обрабатываем
   -- Если истекло время ожидания, сами начинаем взаимодействовать с другими узлами по определенному алгоритму
   -- Проверяем доступность других узлов(мало ли может кто отвалился)

И все бы неплохо, если реализовать это в лоб, но я хочу реализовать это в виде модульной системы, чтобы было удобно развивать код отсюда ряд вопросов:

Как спроектировать модульную систему?
Есть ли какие нибудь подходы?
Книги, статьи почитать на эту тему?

Писать все это дело планирую на С++


Содержание

Сообщения в этом обсуждении
"Проектирование модульной программы"
Отправлено DeadMustdie , 07-Янв-10 19:20 
http://www.csm.ornl.gov/pvm/
http://www.open-mpi.org/

"Проектирование модульной программы"
Отправлено Andrey Mitrofanov , 08-Янв-10 11:59 
Действительно, что в этом смешного-то?! http://google.ru/search?q=botnet+sources

"Проектирование модульной программы"
Отправлено Andrey , 09-Янв-10 07:11 
http://www.cs.wustl.edu/~schmidt/ACE.html - библиотека
http://www.cs.wustl.edu/~schmidt/POSA/ - книги
http://www.cs.wustl.edu/~schmidt/ACE/ - книги

"единственный толковый ответ по теме"
Отправлено Вова , 09-Янв-10 15:06 
>http://www.cs.wustl.edu/~schmidt/ACE.html - библиотека
>http://www.cs.wustl.edu/~schmidt/POSA/ - книги
>http://www.cs.wustl.edu/~schmidt/ACE/ - книги

+1, человеку нужны шаблоны.  Хорошие ссылки, сам давно хотел рассмотреть "как это делают другие", вообще на всех местах работы была одна и та же архитектура транспортного уровня (синглетон - контроллер существования соединений, представленных объектами различных классов, унаследованных от одного базового с методами read()/write()/connect()).


"единственный толковый ответ по теме"
Отправлено Ivanoff , 12-Янв-10 14:01 
>>http://www.cs.wustl.edu/~schmidt/ACE.html - библиотека
>>http://www.cs.wustl.edu/~schmidt/POSA/ - книги
>>http://www.cs.wustl.edu/~schmidt/ACE/ - книги
>
>+1, человеку нужны шаблоны.  Хорошие ссылки, сам давно хотел рассмотреть "как
>это делают другие", вообще на всех местах работы была одна и
>та же архитектура транспортного уровня (синглетон - контроллер существования соединений, представленных
>объектами различных классов, унаследованных от одного базового с методами read()/write()/connect()).

спасибо, изучаю


"Проектирование модульной программы"
Отправлено DeadMustdie , 09-Янв-10 15:32 
>http://www.cs.wustl.edu/~schmidt/ACE.html - библиотека
>http://www.cs.wustl.edu/~schmidt/POSA/ - книги
>http://www.cs.wustl.edu/~schmidt/ACE/ - книги

ACE - штука могучая, жирная и чуток глюкавая.
Всё-в-одном, с очень ограниченной модульностью и избыточным на 95% функционалом.
Мнение такое сложилось из личного опыта применения.


"Проектирование модульной программы"
Отправлено Solo_Wolf , 11-Янв-10 01:31 
Ежели шуровать udp пакетами по бродкасту, то много проблем снимается, ежели все в одной подсети. Но все равно будет подобие smb.

А так действительно - книги читать и изучать то, что давно написано.


"Проектирование модульной программы"
Отправлено Ivanoff , 12-Янв-10 14:00 
>Ежели шуровать udp пакетами по бродкасту, то много проблем снимается, ежели все
>в одной подсети. Но все равно будет подобие smb.
>
>А так действительно - книги читать и изучать то, что давно написано.
>

есть узлы в других подсетях, udp не катит :(


"Проектирование модульной программы"
Отправлено Pahanivo , 12-Янв-10 15:24 
>>Ежели шуровать udp пакетами по бродкасту, то много проблем снимается, ежели все
>>в одной подсети. Но все равно будет подобие smb.
>>
>>А так действительно - книги читать и изучать то, что давно написано.
>>
>
>есть узлы в других подсетях, udp не катит :(

петросян ))))