Как отправить данные с С++ или PHP на Java?

Мне нужно создать приложение Java (приложение A), которое прослушивает TCP-порт, принимает данные, отправляемые из приложений PHP или C++, выполняет некоторую обработку и отправляет данные обратно из приложения A в приложения PHP/C++.

Каков наиболее эффективный способ упаковки данных для отправки с С++/PHP на Java и обратно?

Что делать, если все приложения работают на одной машине? есть ли метод без TCP?

Спасибо большое.


person florian    schedule 16.01.2017    source источник
comment
Человеческое время почти всегда дороже, чем время процессора или пропускная способность сети. Если у вас нет особой причины нуждаться в чем-то еще, используйте JSON через HTTP.   -  person chrylis -cautiouslyoptimistic-    schedule 16.01.2017
comment
использование веб-сервисов RESTful сделает эту работу! Есть и другие. но ОТДЫХ ЛУЧШИЙ   -  person Faraz    schedule 16.01.2017
comment
Если все приложения работают на одном компьютере, вам нужен термин «межпроцессное взаимодействие» или IPC. Доступные типы IPC значительно различаются от одной платформы к другой.   -  person MrEricSir    schedule 16.01.2017
comment
Если вам нужно что-то более эффективное, чем JSON, есть протокольные буферы. Но вам, вероятно, не нужно беспокоиться о микрооптимизации   -  person Patrick Parker    schedule 16.01.2017


Ответы (2)


http://lessons.livecode.com/m/4071/l/12924-как-общаться-с-другими-приложениями-использованием-сокетов

привет, пожалуйста, перейдите по ссылке выше. Я думаю, вы получите несколько полезных советов по ссылке выше

person reshma s s    schedule 16.01.2017
comment
Этот пост не является фактической попыткой ответить на вопрос. Обратите внимание, StackOverflow не работает как дискуссионный форум, это сайт вопросов и ответов, где каждое сообщение является либо вопросом, либо ответом на вопрос. . Сообщения также могут содержать комментарии — небольшие предложения, подобные этому, — которые можно использовать для критики или запроса разъяснений у автора. Это должен быть либо комментарий, либо новый вопрос. - person ρяσѕρєя K; 16.01.2017

Что делать, если все приложения работают на одной машине? есть ли метод без TCP?

Я предполагаю, что вы не хотите использовать сокеты . Использование IPC (inter-process-communication) может очень помочь. Это можно сделать способами:

  • Создать канал между процессами
  • Используйте SendMessage API для отправки структуры сообщения.

Для второго варианта может помочь эта ссылка: Используйте WM_COPYDATA для отправки данных между процессами

person Reznicencu Bogdan    schedule 16.01.2017