Из существующих ответов это становится почти религиозной темой. На CORBA можно смотреть так же, как на полупустой / наполовину полный стакан: с одной стороны, CORBA устарела, а с другой стороны, она относительно стабильна с несколькими доступными реализациями и «дьяволом, которого вы знаете».
В своей работе я вижу CORBA, развернутую во встроенных системах, системах реального времени (CORBA имеет расширения RT) и тому подобное. Существует не так много альтернатив AFAIK.
Еще одним «преимуществом» CORBA является наличие нескольких высококачественных реализаций с открытым исходным кодом, например, TAO, MICO, JacORB и т. Д., С различными моделями лицензирования и поддержки. Доступны также коммерческие издания.
Что касается "большинства" приложений CORBA, реализуемых на Java, то, по моему опыту, это не так. В то время как языковое отображение для CORBA на Java является одним из самых хороших (что, возможно, не говорит много), Java уже имеет очень хорошую модель распределенных вычислений, которая предлагает богатство за пределами CORBA, и все приложения Java используют это больше, чем CORBA. Подавляющее большинство разработок CORBA, которые я видел, находится на C ++ (что также является худшим языковым отображением).
Наконец, CORBA предлагает стандартизированные асинхронные вызовы на стороне клиента в форме AMI, но никогда не предлагал асинхронную обработку на стороне сервера. TAO предлагает нестандартную реализацию на стороне сервера под названием AMH.