[안드로이드] 서버/클라이언트 통신 1

김영훈·2020년 4월 18일
1
post-custom-banner

2 - Tier C/S 모델

  • 클라이언트와 서버가 일대일로 연결하는 방식

  • 클라이언트가 요청을 하고 서버가 응답을 하는 것이 기본적인 네트워킹 방식

3 - Tier 모델

  • 서버를 좀 더 유연하게 구성

  • 응용 서버와 데이터 서버를 구성하는 경우, 데이터베이스를 분리시킴.

  • 네트워킹에 대한 이해
    1. TCP/IP 수준의 통식 방식을 제공하는 소켓을 이용해 서버에 연결해보면 이해 하기 쉽다.

    1. 일반적인 프로그래밍에서는 대부분 TCP 연결 사용.

    1. 비연결성(stateless) 특성으로 인해 실시간으로 데이터를 처리하는 애플리케이션의 경우, 응답 속도를 높이기 위해 HTTP보다 소켓 연결을 선호
  • 소켓 연결 방식
    1. 안드로이드에서는 표준 자바의 소켓을 그대로 사용이 가능하다.

    1. 서버쪽에는 서버소켓을 만들어 실행함(포트 지정)

    1. 클라이언트쪽에서는 소켓을 만들어 서버 소켓으로 연결함(IP와 포트 지정)

    1. Stream 객체를 이용해 데이터를 보내거나 받을 수 있음

네트워킹 사용 시 주의할 점

  1. 네트워킹을 사용할 때는 반드시 스레드 사용
  2. 스레드를 사용하므로 UI 업데이트를 위해서는 반드시 핸들러를 사용
post-custom-banner

0개의 댓글