1

에 파일을 배포 :자바 클라이언트 - 서버 - 나는 다음을 수행해야 자바 클라이언트/서버 응용 프로그램을 작성하려는 여러 서버

  • 클라이언트는 두 서버 중 하나가
  • 서버가 텍스트를 전송에 연결을 파일 또는 클라이언트에 컨텐츠는
  • 사용자는
  • 클라이언트가 다시 동시에 서버에 안정적으로
  • 클라이언트 응용 프로그램을 닫습니다 파일을 전송하는 파일을 편집

보너스 : 이러한 서버 중 하나가 전송시 중단되어 시작할 때 파일을 받아야합니다.

이 기능을 사용하려면 어떤 아키텍처 또는 프레임 워크가 유용할까요? JGroups는 좋은 출발입니까?

편집 : 나는 다음과 같은 최소한의 네트워크를 가정해야 :

  • 하나 이상의 클라이언트가 응용 프로그램을 시작을하지만, 동시에 파일을 편집 할 수 없습니다해야합니다.
  • 클라이언트는 모든 서버 주소
+0

이것이 클러스터 된 솔루션 인 경우 (즉, 두 서버가 동일한 네트워크에있는 경우) 공유 파일 시스템을 사용하는 것이 가장 쉬운 방법입니다. – nablex

+0

이것은 분명히 가장 편안하지만 불행히도 이것은 나를위한 선택 사항이 아닙니다. 어쨌든 고마워. – FoxDie

답변

0

는 JMS 프레임 워크와 xml 파일을 가지고 (한 종류의 랜덤) 적어도 하나는 항상 활성화되어있는 하나 개 이상의 서버가 (있다

  • 클라이언트 게시물 모두 서버가
  • 하나 개의 서버는이 요청을 수신하고에 파일을 전송하는 파일을 요청들을 큐에 메시지를 : ActiveMQ를)은 큐와 주제를 사용하여 문제를 해결할 수 클라이언트
  • 클라이언트가 파일
  • 클라이언트가 두 서버 모두가 다시 연결하면 파일을 얻을 중요하므로 오프라인 가입자 (서버)를 내구성이 주제입니다 사용

가입되어 내구성이 주제에 편집 된 파일을 전송 편집합니다.

+0

재미있는 소리. 나는 이것을 조사 할 것이다. 그 튼튼한 화제는 어디에 저장되어 있습니까? 왜냐하면 그 사람이 파일을 보낸 후에 "불 또는 잊을 수"있거나 간단하게 종료 할 수 있기를 원하기 때문에 그것이 클라이언트에서 발생한다면 문제가 될 수 있습니다. – FoxDie

+0

주제와 대기열 모두 JMS 브로커 (예 : ActiveMQ)에서 관리합니다. 이것은이 모든 통신을 관리하는 별도의 응용 프로그램으로 작동합니다. – coyote

+0

확인. 그래서 내 클라이언트가 온라인 상태가 아니기 때문에 브로커가 모든 서버에 있어야합니다. 최소한 하나만 활성화되어 있다고 가정 할 수 있기 때문입니다. 그래서 나는 나의 클라이언트에서 말한 서버로 포인트 - 투 - 포인트 연결을 만들 것인데, 이것은 차례 차례로 새로운 파일의 다른 모든 서버에게 알리는 중개자의 역할을 할 것이다. 말이 돼? – FoxDie

관련 문제