Чем мы заменим связь DCOM?

в настоящее время у нас есть несколько приложений c++/MFC, которые взаимодействуют друг с другом через DCOM. Теперь мы будем обновлять приложения, а также хотим заменить DCOM на что-то более современное, с чем проще работать. Но мы не знаем, что. Что вы думаете

редактировать

обмен данными не является чем-то, что может представлять интерес для других. Это только информация о состоянии между различными частями программы, запущенной на разные компьютеры.

4 ответов


есть много библиотек обмена сообщениями C++, из старого ACE для новых, таких как Google Протокол Буферы или Facebook (теперь Apache) бережливость или Cisco Etch.

В настоящее время я слышу хорошие вещи о ZeroMq что может дать вам больше, чем вы привыкли.


DCOM Это не более чем сахар-покрытие по курьерской системы.

любая правильная система messenging будет делать и позволит вам фактически определить здесь обмен сообщениями (что может быть важно для локализации точки сбоев / узких мест производительности в ожидании).

в настоящее время существует два типичных способа сделать это:

  • чистая система messenging, например, с использованием буферов протокола Google в качестве обмена формат
  • веб-сервис (либо полный веб-сервис в JSON, либо REST API)

Я делал много приложений как на C++, так и на Java, используя REST, и я очень доволен. Вдали от сложности CORBA и SOAP, REST прост в реализации и гибок. У меня было немного кривой обучения, чтобы Гед использовал для моделирования вещей как CRUD,но теперь это кажется еще более интуитивным.

теперь для стороны c++ я не использую определенную библиотеку REST, просто cURL и синтаксический анализатор XML (в моем случае CPPDOM), потому что приложения C++ являются только клиентами, а серверы-Java (используя Restlet framework). Если вам нужен один, есть еще один вопрос здесь, так что рекомендует:

может ли кто-нибудь порекомендовать хорошую C/C++ RESTful framework

Я бы также упомянул, что мое решение использовать XML было произвольным, и я серьезно рассматриваю возможность замены его на JSON. Если у вас нет конкретной потребности в XML, JSON проще и легче. И красота отдыха в том, что вы можете даже поддержать оба, наряду с другими представлениями, если хотите.


Это зависит от многих факторов. Его можно просто заменить .Удаленное взаимодействие. net. Кроме того, если вы собираетесь предоставлять услуги для других компонентов более стандартным способом,Web-Сервисов будет хорошим выбором.