У меня есть программа на C#, работающая на локальной системе, которая должна быть в состоянии сделать две вещи.Проектирование межплатформенного коммуникационного интерфейса
- Асинхронно отключение удаленных заданий на удаленных системах под управлением Windows, Linux или Android.
- Обеспечьте способ для этих систем отправить обратно выходные данные (StdOut/StdErr) этих заданий обратно в локальную систему.
Ранее я использовал WCF при общении с удаленной системой Windows. Я создал WCF-сервер в удаленной системе Windows, а затем мой локальный компьютер может отправлять команды и сообщения через этот канал WCF. Все усложняется, когда я пытаюсь сделать то же самое с Linux и Android.
Я полагаю, что смогу настроить локальную службу WCF с помощью REST, таким образом, все 3 платформы могут отправлять сообщения с помощью любого удобного языка (скорее всего, C++) через JSON REST. Но какой лучший способ выполнить требование №1?
Должен ли я беспокоиться о создании сервера REST на C++, который работает на Linux и Android? Может ли WCF использовать сервер REST C++, который не написан на .Net? Могу ли я лучше сделать что-то простое с помощью только сокетов TCP?
Безопасность не является проблемой, поскольку она используется в защищенной частной сети. Я просто ищу самый простой способ запуска удаленных команд/процессов и получения ответных сообщений от этих удаленных систем.