안드로이드 개발 질문/답변
(글 수 45,052)
안드로이드에서 서버소켓을 생성하는데, 문제점이 발생할 수 있나요??
서버소켓을 하나 이상 띄울 생각인데..
어떤 방법이 더 나은 방법일까요..? 조언 부탁드립니다.
1. 안드로이드에서 해당 개수 만큼 서버소켓을 띄운다
2. 서버를 따로 만들어서 클라이언트(안드로이드)에서 해당 개수를 전송하면
서버에서 그 데이터를 받고 서버소켓을 생성한다.
2010.08.06 14:12:08
지나가다님 말씀 잘 읽어보았습니다.
그럼 원격에서 안드로이드로 접속할 일은 없고,
해당 폰에서만 접근할 건데.. 음..
예를 들면 제가 사용하는 폰에서 스레드에 서버소켓을 하나 생성해서 accept하고 있다면,
메뉴 버튼을 눌러서 브라우저를 킨 다음에 생성한 서버소켓 ip로 접속하는 동작만 하거든요..
이렇게 될 경우에는 문제가 없나요..??
아 그리고 지나가다님이 2번째 말씀하신거는 제가 질문한 글에 약간의 오해의 소지가 있었던거 같네요
만약 A, B 2개의 서버에 안드로이드에서 데이터를 요청 한다고 가정한다면....
제가 안드로이드에 C, D 서버를 만들어서 각각의 서버에서 안드로이드의 요청을 읽어서 A, B 서버로 요청 내용을
전달해 주도록 만들려고 하는데요...
이런식으로 만들 경우에... 10개의 서버에 데이터를 요청해야 한다면 안드로이드에서 10개의 서버를 만들어야 하기 때문에
임의의 서버를 하나 만들어 놓고 안드로이드에서 데이터를 요청할 서버 개수를 알려주면
서버에서 그 개수 만큼 서버를 만들어서 진짜 서버쪽으로 데이터를 전송해 주는거죠
구지 안드로이드에서 접속을 받을 수 있는 상황이 아니어도 돼요 ㅎ
제가 말재주가 없어서;;; 설명을 너무 이상하게 했네요 ㅠㅠ
이해 하셨을 지...
그럼 원격에서 안드로이드로 접속할 일은 없고,
해당 폰에서만 접근할 건데.. 음..
예를 들면 제가 사용하는 폰에서 스레드에 서버소켓을 하나 생성해서 accept하고 있다면,
메뉴 버튼을 눌러서 브라우저를 킨 다음에 생성한 서버소켓 ip로 접속하는 동작만 하거든요..
이렇게 될 경우에는 문제가 없나요..??
아 그리고 지나가다님이 2번째 말씀하신거는 제가 질문한 글에 약간의 오해의 소지가 있었던거 같네요
만약 A, B 2개의 서버에 안드로이드에서 데이터를 요청 한다고 가정한다면....
제가 안드로이드에 C, D 서버를 만들어서 각각의 서버에서 안드로이드의 요청을 읽어서 A, B 서버로 요청 내용을
전달해 주도록 만들려고 하는데요...
이런식으로 만들 경우에... 10개의 서버에 데이터를 요청해야 한다면 안드로이드에서 10개의 서버를 만들어야 하기 때문에
임의의 서버를 하나 만들어 놓고 안드로이드에서 데이터를 요청할 서버 개수를 알려주면
서버에서 그 개수 만큼 서버를 만들어서 진짜 서버쪽으로 데이터를 전송해 주는거죠
구지 안드로이드에서 접속을 받을 수 있는 상황이 아니어도 돼요 ㅎ
제가 말재주가 없어서;;; 설명을 너무 이상하게 했네요 ㅠㅠ
이해 하셨을 지...
2010.08.06 13:18:21
서버 소켓을 만든다는 것은 Listening하는 소켓을 하나 만들겠다는 의미 같은데...
해당 개수만큼 소켓을 만든다는게 무슨 의미죠?
클라이언트가 접속을 하면, accept를 통해서, 클라이언트와 연결된 소켓을 받을 수 있습니다만...
해당 개수만큼 소켓을 만든다는게 무슨 의미죠?
클라이언트가 접속을 하면, accept를 통해서, 클라이언트와 연결된 소켓을 받을 수 있습니다만...
그나마 wifi 환경이라도 공유기 환경 밑에서라면 공유기(nat)에 DMZ 설정해야 접속가능하고.
간단하게 말씀드리면 모바일기기에 서버 소켓 만든느것은 그다지 효율적이지 못합니다.
2. 서버에서 모바일로 부터 갯수를 받아 서버에 서버소켓을 만든다는건 무슨 의미인지 잘 모르겠네요.
서버에 소켓을 만들더라도 안드로이드에서 접속을 받을수 있는것은 아니지 않은가요?