Мы разрабатываем систему со следующими требованиями.
- Есть N систем, каждая из которых генерирует уникальные для себя данные
- Каждая система требует данных от любой другой системы для достижения своей конечной цели
- Эти системы общаются друг с другом в ненадежной сети.
- Ожидается, что некоторые системы будут полностью недоступны в течение длительных периодов времени (но они могут быть в контакте с некоторыми из тех пиров, которые находятся в контакте с остальной частью сети)
Другими словами, каждая система должна реплицировать свои данные в N одноранговых систем. В идеале это будет сделано разумно.
Я рассмотрел вопрос о механизмах синхронизации баз данных, но меня беспокоит, что эта проблема излишня. Я не думаю, что существует вероятность конфликта строк, потому что данные каждой системы полностью независимы от других систем.
Вопрос в том, знаете ли вы какие-либо рамки, которые могли бы помочь решить эту проблему? Или, возможно, способ сформулировать эту проблему, которая может помочь мне найти способ найти решение.
Наконец, в идеале, этот фреймворк должен быть на C ++ (и, возможно, на Java).