2010-12-20 3 views
1

C++ 프로그램을 웹 서비스로 제공하는 방법은 무엇입니까? 또는 Java에서 C++을 호출하고 결과 Java를 웹 서비스로 노출하는 것이 더 좋습니다.C++ 프로그램을 웹 서비스로 노출

어쨌든 C++ 프로그램은 변경되지 않아야합니다.

답변

1

자바 WebService에 엔드 포인트 C++ 프로그램을 소비하고 있다는 것을 의미 C를 소비하는 자바 웹 서비스

사용 JNI

2

흥미롭게도, 웹 서비스는 HTTP 프로토콜에서 작동 ++ 프로그램을 노출 http 서버가 없어도 C++로 작성된 웹 서비스를 "호스트"할 수 없습니다. 각 웹 서버에는 "후크"또는 확장 기능을 작성하는 고유 한 메커니즘이 있기 때문에 다음에 분명한 질문은 어떤 웹 서버를 선택 하시겠습니까?

Windows에서 IIS를 사용한다고 가정 해 보겠습니다. ISAPI 확장을 사용할 수 있습니다. 따라서 웹 서비스 표준을 준수하는 웹 서비스를 작성하는 방법을 알아야합니다. 또는 Visual Studio로 C++에서 수행하는 방법을 익히는 것이 좋습니다 (built-in stuff to help you get started이 많이 있음).

요약하면 C++에서 웹 서비스를 노출하는 "표준"방법은 없으며 사용자는 "플랫폼"고유해야합니다. IIS가있는 Windows에는 한 가지 방법이 있습니다. Apache Axis C++에는 다른 것이 있습니다.

0

c-sevice-interface https://github.com/Taymindis/c-service-interface을 시도 할 수 있습니다.

서비스 포트로 C/C++ 프로그램을 만들고 NGINX fcgi를 수신합니다.

요청의 높은 부하를 처리 할 수있는 작은 브리지 엔진이며 모든 segfault는 엔진을 중단시키지 않으며 스레드를 잡아서 무료로 제공하며 최고 NGINX, FCGI를 기반으로합니다. 인터페이스에 도달하기 전에 NGINX를 통해 프록시,로드 밸런스, 인증을 설정할 수 있습니다.

아래 링크는 처음부터 시작하는 방법을 안내하는 위키입니다.

https://github.com/Taymindis/backcurl/wiki/How-to-build-BackCurl-for-cpp-Android-development

관련 문제