С ++ к мосту C # с несколькими процессами

У меня есть библиотека C ++, которая обрабатывает запросы к документам, и веб-сервер ASP.NET 5 (.NET Core), который должен открывать и запрашивать документы с использованием этой библиотеки.

Я хочу изолировать библиотеку C ++ от веб-сервера (чтобы при сбое библиотеки не происходил сбой сервера). Поэтому я подумываю о том, чтобы создать отдельный процесс для каждого открытого документа и передать запросы этим процессам с помощью сокетов.

Вопрос заключается в следующем: как и где мне следует обращаться с порождением и управлением процессом? Что лучше сделать на стороне C #, на C ++ или использовать какое-то промежуточное ПО? Существуют ли библиотеки, которые могут помочь мне управлять процессами, убивать замороженные процессы, поддерживать дополнительные процессы и т. Д.?

0

Решение

Создание процесса — это верный способ сделать это. Таким образом, вы не рискуете, что внешняя библиотека отключит ваш серверный процесс. Конечно, вы все еще подвержены внешнему процессу, который портит среду полностью (например, сбой ОС), но это ортогонально этому.

Так как вы пометили вопрос с asp.net-5 Я полагаю, вы используете это. Хотя ничего нет, по крайней мере, в том, что Microsoft поставляет как часть ASP.NET 5, для управления процессами с вашего веб-сервера вы можете взглянуть на код для DNX-часы. Наблюдатель управляет внешним процессом.

1

Другие решения

Других решений пока нет …