Являются ли CORBA (язык агностик)/RMI (Java) и (D) COM (MS) актуальным сегодня, или есть технология, которая их превзошла?CORBA/RMI и (D) COM все еще актуальны сегодня?
Приветствия, J
Являются ли CORBA (язык агностик)/RMI (Java) и (D) COM (MS) актуальным сегодня, или есть технология, которая их превзошла?CORBA/RMI и (D) COM все еще актуальны сегодня?
Приветствия, J
Они не так популярны сегодня, как современный Java или .Net архитектуры, как правило, делают этот тип вещи, используя HTTP на основе веб-сервисов.
Однако многие системы используют эти архитектуры, и они более эффективны, чем архитектура веб-сервисов, поскольку они обычно используют протоколы связи на основе UDP. Несмотря на то, что эти архитектуры все еще используются сегодня, они в основном отнесены к традиционным и нишевым рыночным системам на практике.
В некоторых случаях RMI используется за кулисами в серверах приложений Java. Например, контейнер контейнера может быть перемещен на отдельный сервер с сервера веб-приложений. Серверы приложений Java делают это достаточно прозрачным - контейнер контейнера может находиться на одном сервере через локальные вызовы или на другом сервере через RMI. При правильной архитектуре приложения это просто элемент конфигурации, и сервер приложений может выполнять все удаленные операции за кулисами.
DCOM используется аналогично приложениям COM +. Однако COM + в значительной степени является старой архитектурой Windows. Он был популярен среди VB6, но это почти не рекомендуется.
CORBA имеет заслуженную репутацию за сложность из-за своих конструктивных корней. Однако он появляется во многих неожиданных местах. Например, в более ранних версиях GNOME использовалась модель компонента на основе CORBA под названием Bonobo, но в основном она была заменена D-BUS в текущих версиях. Помимо устаревшей системной инфраструктуры он имеет несколько нишевых рынков (в основном приложений с низкой задержкой), которые извлекают выгоду из его характеристик, таких как транспортный механизм на основе UDP.
Java EE EJBs до сих пор используют RMI и CORBA в качестве проводного протокола.
Возможно, это одна из причин, почему HTTP веб-служб, будь они основаны на RPC-XML, SOAP или REST, являются асцендент. Простые и открытые обычно выигрывают.
AFAIK CORBA IIOP использует TCP, а не UDP. –
Многие реализации CORBA позволяют вам заменять транспорт из TCP по умолчанию. Это позволяет использовать UDP, общую память или какой-либо другой механизм, специфичный для ОС, в качестве основного транспорта. Одна из причин, по которой CORBA по-прежнему используется сегодня, заключается в том, что она имеет как объектную модель, так и двоичный сквозной транспорт, позволяя эффективность, которую вы не получаете с помощью веб-службы. –
@Brian - Было бы интересно, какие * реализации CORBA позволяют вам переключать транспорт из TCP. Фактически, я только что добавил вопрос относительно этого: http://stackoverflow.com/questions/4886243/what-transport-layers-other-than-tcp-are-supported-by-existing-corba-implementati –