2013-04-16 2 views
0

내 Java ME 프로그램은 1000 개의 다른 위치에 임베디드 시스템 (내 프로그램이 설치된 일부 상자)에 사용됩니다. 클라이언트가 하나의 서버에 연결하여 ID 번호를 제공하는 일부 정보를 검색 할 수 있도록이 상자가 서버 (바람직하게는 REST 서버)가 될 가능성이 있습니까? 이것은 여러 서버와 하나의 클라이언트 만있는 드문 아키텍처입니다. 나는이 상자의 IP 주소가 정적으로 남아 있지 않을 것이고 그것들에 의지 할 수 없다고 생각한다. 그렇다면이 상자 중 하나에 http 연결을 설정하는 올바른 방법은 무엇입니까?하나의 클라이언트 - 임베디드 시스템의 많은 서버

참고 : 역 아키텍처가 이미 설정되어 있습니다. 따라서 각 상자는 클라이언트이며 웹 서버에 연결할 수 있습니다.

답변

1

가장 쉬운 방법은 현재 {id-> ip addres} 테이블을 유지하는 서버를 실행하는 것입니다. 각 상자가 켜지면 서버에 IP 주소를 알립니다. 보다 정교한 솔루션은 Peer-to-peer wikipedia article

+0

에서 찾을 수 있습니다. 필요한 IP 주소를 알고 있더라도 포트 80을 통해 연결할 수 있습니까? 라우터가 연결을 차단하고 포트 포워딩을 필요로하지 않습니까? –

+0

방화벽에 따라 다릅니다. Skype는 몇 가지 트릭을 사용하여 방화벽 제한을 우회합니다. 방화벽이 없으면 서버가 작동하고 실행중인 경우 사용자가 상자에 액세스하지 못하게 할 수 없습니다. –

관련 문제