각각 자체 JVM 인스턴스에서 실행되는 두 개의 Java 프로그램이 있습니까? 공유 메모리 또는 파이프와 같은 IPC 기술을 사용하여 서로 통신 할 수 있습니까? 그것을 할 수있는 방법이 있습니까?Java에서 InterProcess 통신이 가능합니까?
답변
예; D-BUS 및 Pipes은 사용하기 쉽고 크로스 플랫폼입니다. D-BUS는 일반적인 메시지 전달 IPC 및 대량 데이터 전송을위한 파이프에 유용합니다.
중앙 서버에 연결하는 여러 클라이언트를 지원해야하는 경우 localhost에서 TCP 또는 UDP 소켓을 열 수도 있습니다.
또한 JNI가 필요하지만 implementation of UNIX sockets in Java도 있습니다.
http://java.sun.com/javase/technologies/core/basic/rmi/index.jsp
Java 원격 메소드 호출 (Java RMI)는 분산 자바 원격 자바 객체의 메소드를 다른 Java 가상 머신에서 호출 할 수있는 자바 기술 기반 애플리케이션에 기술을 기반으로 만들 수있는 프로그래머를 할 수 *, 아마도 다른 호스트에. RMI는 객체 직렬화를 사용하여 매개 변수를 마샬링 및 비 정렬 화하고 유형을 자르지 않으며 진정한 객체 지향 다형성을 지원합니다.
확실히. Java Spaces과 같은 RMI 또는 공유 메모리 개념을 살펴보십시오.
프로세스 간 메모리 공유를 위해 Java NIO의 MemoryMappedByteBuffer를 사용하십시오.
Plasma이라는 아파치의 컬럼 기반 (즉, 배열 기반) 데이터의 언어 독립적 IPC에 대한 새로운 시도가 있습니다.
아직 (9 월 17 일) JVM 바인딩이 없지만 프로젝트가 Spark의 지원을 받으면서 구현을 보게 될 때까지 그리 오래 걸리지 않을 것이라고 생각합니다.
하지만 일반적인 과학적 계산을 위해서 double
, long
과 같은 프리미티브 배열을 공유하기 위해 일반적인 IPC 시스템이 없다는 것을 이해합니다. 나는 여기서 잘못 될 수 있지만. 플러스 측면에서는 언어에 구애받지 않기 때문에 다른 JVM 런타임과 통신 할 때 사용할 수 있습니다. 그러나 OP는 Java IPC를 요구했기 때문에 이것이 중요하지 않을 수 있습니다.
- 1. 리눅스 프로세스에 양방향 통신이 가능합니까?
- 2. 다른 피코넷에 피코넷 간의 통신이 가능합니까?
- 3. Flash Media Server와 XMPP 서버 통신이 가능합니까?
- 4. 고급 GUI Java에서 가능합니까?
- 5. Java에서 코드 삽입이 가능합니까?
- 6. BlazeDS를 통한 Android 장치와 Flex 간의 통신이 가능합니까?
- 7. Android : 애플리케이션 또는 별도의 스레드 내에서 HTTP/JSON 통신이 가능합니까?
- 8. MVVM-Light 메시징을 사용하여 ViewModel과 모델 간의 비동기 통신이 가능합니까?
- 9. PHP 이외의 것을 사용하여 피어 투 피어 통신이 가능합니까?
- 10. 쿠키 또는 기타를 통해 iOS safari에 앱 통신이 가능합니까?
- 11. Java에서 Method 객체의 직렬화가 가능합니까?
- 12. Java에서 Thread의 사용자 정의 구현 : JNI가 가능합니까?
- 13. 은 Java에서 계층 적 구조가 가능합니까?
- 14. Java rmi에서 통신이 안전합니까?
- 15. PHP와 C#의 통신이
- 16. 직렬 포트 통신이 실행되는 쓰레드
- 17. 버려진 boost :: interprocess :: interprocess_mutex의 소유권은 어떻게 받습니까?
- 18. boost :: interprocess :: message_queue에서 내가 뭘 잘못하고 있니?
- 19. boost :: interprocess :: message_queue를 통해 포인터를 전송하십시오.
- 20. Boost :: Interprocess with complex, nested classes
- 21. JSON 배열을 사용하여 Windows-phone-7, MYSQL 데이터베이스와 PHP 간의 통신이 가능합니까?
- 22. WCF 서비스와 .net 2.0 Windows 응용 프로그램간에 양방향 통신이 가능합니까? 그렇다면 어떻게?
- 23. Java Antivirus ... 가능합니까? 방법?
- 24. MSDTC가 : 기본 트랜잭션 관리자와의 통신이 실패
- 25. .NET에는 신뢰할 수있는 Asynchronouos 소켓 통신이 없습니까?
- 26. 모든 SMTP 통신이 25 회 이상 발생합니까?
- 27. 은 USB를 통해 안드로이드에서 시리얼 통신이 가능합니다
- 28. Silverlight에서 클라이언트/서버 통신이 빠르고 원활하지 않습니다.
- 29. boost :: interprocess :: message_queue가 Visual C++로 릴리스 모드에서 작동하지 않습니다.