하나의 서버 (Java에서 개발 됨)와 하나 이상의 원격 GUI 클라이언트 (Windows가있는 Swing 응용 프로그램)로 구성된 분산 응용 프로그램을 설계해야합니다.서버 클라이언트 Java 분산 응용 프로그램
앞서 언급 한 것처럼 클라이언트는 데이터를주고 받기 위해 서버에 연결할 수있는 스윙 GUI 응용 프로그램입니다. 통신이 양방향 (서버 < => 클라이언트)입니다. 네트워크를 통해 전송 된 데이터는 주로 내 도메인 논리 개체로 구성됩니다.
간단한 두 가지 예 : 클라이언트가 창 안의 테이블을 채우기 위해 데이터를 받기 위해 서버를 호출합니다. 서버는 버튼과 같은 특정 위젯을 새로 고치기 위해 데이터를 보내기 위해 클라이언트를 호출합니다.
서버와 클라이언트간에 전송되는 데이터의 양과 네트워크 호출의 빈도는 특별히 높지 않습니다.
서버 - 클라이언트 통신에 어떤 기술을 제안합니까?
나는 한 가지 기술을 마음에 듭니다. 그러나 나는 당신의 의견을 알고 싶습니다.
고마워요.
답변 해 주셔서 감사합니다. 사실 내가 생각한 기술은 RMI입니다. 앞으로 클라이언트가 웹 인터페이스에서 변경 될 것이라고 생각하지 않습니다 (스윙 기술로 충분할 것입니다). 이제는 RMI를 채택하는 데있어 다른 단점이있을 수 있다고 생각하십니까? – epok
솔직히 말해서, 오랫동안 RMI를 사용하지 않았습니다. "긴"2 년의 의미. 제가 지금 많이 사용하고있는 것은 아파치 CXF와 SOAP입니다 - 거대한 Object 그래프를 보내고있는 경우에는 최선의 선택이 아닐 수도 있습니다. RMI를 사용하여 작업 한 것들은 꽤 잘 돌아갔다. (필자는 PDA와 워크 스테이션간에 데이터를 동기화하는 데 사용했다.) – msparer
사실 서버 - 클라이언트 통신을 위해 네트워크를 통해 전송되는 데이터는 도메인 개체로 구성됩니다. 때로는 이러한 객체는 "단순"(예 : 두 개의 정수와 문자열이있는 객체 하나) 또는 "복합"(서버에서 클라이언트로 전송 한 많은 객체 목록) 일 수 있습니다. 분명히 이러한 개체의 구현은 서버와 클라이언트에서 볼 수 있습니다. – epok