В спецификации D-Bus говорится, что
D-Bus - это... простой способ для приложений общаться друг с другом... В настоящее время взаимодействующие приложения находятся на одном компьютере...
Я хотел бы что-то вроде D-Bus, но для работы на нескольких машинах Linux, и могут быть задействованы брандмауэры. Например, если мой почтовый сервер решит, что он получил важное сообщение, я хотел бы, чтобы он отправил событие в шину, которую мой домашний компьютер может увидеть и, возможно, ответить, запустив окно linpopup
.
События, которые меня интересуют, происходят относительно нечасто, так что низкопроизводительный метод подходит. Но я бы предпочел не изобретать велосипеды. Я также предпочел бы, чтобы как можно больше было написано на сценариях оболочки или других языках высокого уровня и как можно меньше на C (но я готов вызывать C API, если это необходимо).
Как я интерпретирую официальные веб-страницы D-Bus, они говорят, что было бы неплохо получить D-Bus общаться с несколькими компьютерами, но это не работает.
Изменить. Что меня привлекает в D-Bus, так это модель публикации и подписки:
Машина, которая наблюдает интересное событие, публикует это событие в «системе».
Машина, которая интересуется определенными событиями, подписывается только на эти события. Когда происходит событие, «система» сообщает об этом машине.
В D-Bus «система» — это отдельная машина. Я хочу что-то подобное для нескольких машин. Это исключает прямые решения, такие как TCP или SMTP, для связи между машинами. Но я счастлив иметь центральный сервер, который получает все запросы на публикацию и подписку. Я начинаю думать, что было бы проще создать свой собственный, чем разбираться в Advanced Message Queuing Protocol (AMQCP), что слишком сложно для таких, как я.
Производительность не имеет значения. Простота, безусловно, цель.
Еще раз: какое программное обеспечение я должен посмотреть?