Я работаю над серверным компонентом на основе .NET, который взаимодействует с набором пунктов назначения (точнее, биржи опционов на акции), используя множество протоколов, зависящих от пункта назначения. Следующее место назначения, которое мы планируем добавить, использует CORBA, поэтому я исследую библиотеки .NET, которые могут говорить на CORBA.
Пока что я нашел три возможности:
Есть ли у кого-нибудь опыт работы с любым из них, хорошим или плохим?
Есть ли другие варианты?
Я мог бы использовать одну из библиотек CORBA на основе C++ (omniORB и ТАО кажутся двумя лучшими, но есть и другие) через смешанный собственный управляемый код C++ / CLI, но данные должны поступать в управляемое ядро и из него. сервер в какой-то момент, добавление затрат производительности для маршалинга и использование собственных библиотек C++ в сценарии со смешанным кодом, как правило, довольно болезненно.
Обновление - мы начали использовать IIOP.NET, и пока все выглядит неплохо. Производительность самой последней версии (1.9 sp1) кажется приемлемой, а API достаточно прост в использовании. Я обязательно посмотрю на ИКВМ, как это предложил Тодд Стаут - это выглядит очень интересной возможностью, если IIOP.NET не сработает.
Обновление №2 (июль 2010 г.) - мы уже какое-то время используем IIOP.NET в производственной среде, и это дает хорошие результаты. Проект IIOP.NET - это не совсем то, что я бы назвал активным, но, опять же, и CORBA, так что, похоже, нет большой необходимости в дальнейшей разработке.





IONA ORBIX - единственное, с чем у меня есть опыт.
Он работает так же хорошо, как и любой другой брокер CORBA, но это дорого.
Предоставляет ли ORBIX привязку IDL C# (CORABA-)?
Похоже на это: - Платформы <a href=iona.com/products/orbix/orbix_platforms.htm>supported</a> Основным преимуществом ORBIX является количество поддерживаемых paltofrms.
Нет - ORBIX - это только C++ / Java. Они поддерживают множество вариантов Windows, но только для Visual C++ и различных версий Sun JDK.
Офф, будь утомлен - мы, наконец, переключились с IONA на TAO, чтобы помочь уменьшить количество головных болей в неделю из-за бесконечных ошибок, исправление которых они откладывали до версии ++ и впоследствии взимали с нас сумасшедшие деньги. Несколько раз.
Мы использовали Visibroker C++ и обернули его оболочкой .NET. Это кошмар! Продукт Janeva может быть в порядке, но в наши дни Borland, похоже, не очень им интересуется.
IIOP.Net может быть вашим лучшим выбором.
Вы можете использовать библиотеки из комплекта ИКВМ. IKVM предоставляет большую часть среды выполнения JSE в виде набора сборок .Net (упаковка в виде набора является недавним улучшением). Реализация Sun Java ORB включена в этот набор библиотек. IKVM выполняет это путем компиляции двоичных файлов Open JDK в .Net CIL. Вы можете ссылаться на соответствующие библиотеки и вызывать Java CORBA API непосредственно из кода .Net.
Отличное предложение - обязательно проверю.
IIOP.NET - хороший проект с открытым исходным кодом, который, к сожалению, был остановлен в 2007 году. У проекта немного документации, но он работает.
Я использую ValueType в CORBA, и IIOP.NET работает хорошо.
Спасибо за обновления вопроса, очень полезно!