Наша система продуктов состоит из сервера IIS 6.0, за которым находится Java SOA-сервер, за обоими из которых расположен сервер базы данных Oracle.
По различным причинам нам нужна служба Windows, работающая на JavaSOA-сервер, на котором хранятся непрозрачные BLOB-объекты, связанные с GUID.Вот упрощенная версия интерфейса:
interface IBlobService
{
void PutBlob(Guid key, byte[] data);
byte[] GetBlob(Guid key);
}
Основным пользователем IBlobService является веб-интерфейс, работающий на сервере IIS.Мы могли бы использовать удаленное взаимодействие WCF или .NET через пользовательский порт для связи между серверами.Тем не менее, наше приложение подлежит строгим требованиям аккредитации.Мы бы предпочли использовать известный порт для связи, а не пользовательский порт.
Мы не можем использовать именованные каналы, потому что нам нужно взаимодействовать между серверами.Мы рассматривали возможность использования MSMQ, поскольку он использует известный порт, но MSMQ ограничивает размер сообщения до 4 МБ.Нам нужно передать гораздо больше - не менее 60 МБ.
Какие другие возможности (если таковые имеются) предоставляет .NET, которые позволят осуществлять связь между серверами через известный порт?