Это в основном одно приложение, которое установлено на нескольких ПК, каждая из которых поддерживает свою собственную базу данных, которая синхронизируется с другими, как и когда они подключены (подключены к одной сети) в одно и то же время.
Я проверил это, используя простые сокетные соединения и пользовательские буферы, но хочу, чтобы связи между приложениями соответствовали принятым стандартам, а также были безопасными / надежными, а не пытались заново изобрести колесо.
Каков нормальный / стандартный способ передачи данных между приложениями и где я могу узнать больше?
Кроме того, какие методы / можно использовать для объявления и поиска других приложений в сети?
редактирование:
(уточняя мою проблему)
Модель паба / субмарина, на которую указывает ниже гимел, похоже, соответствует тому, что мне нужно. Тем не менее, он охватывает много вопросов, и я не знаю, что отнять и использовать от всего этого.
Похоже, мне нужно установить P2P-соединение, когда два или более приложений нашли друг друга - как мне это сделать?
Если есть примеры / учебные пособия, укажите их. Небольшие проекты / модули с открытым исходным кодом, которые реализуют что-то вроде того, что мне нужно, также будут полезны.
Моя предпочтительная платформа - Linux, но примеры на основе Windows также будут очень полезны.
изменить [09-01-06]:
В настоящее время я смотрю на следующие варианты:
- многоадресная рассылка (TLDP-Howto) - это кажется работоспособным, но мне нужно изучить его еще немного.
- с использованием бесплатных динамических DNS-серверов, хотя это выглядит немного рискованно ...
- используя бесплатную электронную почту, например, Gmail / Yahoo / ... и отправлять / читать почту оттуда, чтобы найти IP-адреса других приложений (может работать, но чувствует себя грязным)
- веб-сервисы были предложены, но я не знаю, как они работают, и мне придется изучить их
Буду признателен за ваше мнение по поводу этих вариантов и если есть какие-либо примеры. К сожалению, у меня нет возможности использовать центральный сервер или веб-сайт (если не гарантируется, что он будет бесплатным и постоянным).
[Редактировать 2009-02-19]
(Жаль, что я не смогу принять два / три ответа! Тот, который я принял, потому что он предлагает линии мысли и возможности, в то время как другие пришли с фиксированными, но применимыми решениями. Спасибо всем, кто ответил, все это помогает. )
Поскольку & когда я найду / внедрю свое решение, я обновлю этот вопрос, и если решение будет адекватным, я создам для него проект sourceforge. (В любом случае это небольшая проблема в гораздо более крупном проекте.)