2016년 11월 25일 금요일

Load Balancing 설명

Load Balancing : 웹 어플리케이션의 부하를 분산하는 방식임
  • Server Side Load Balancing
    • Switch(L4, L7)를 사용함
    • HA proxy - Open Source Software Loadbalancer임
    • 문제점
      • Switch가 처리할 수 있는 요청수에 한계가 있음
      • Switch장비를 설치하거나 설정이 어렵고 비싼 장비임 (HA proxy 역시 서버가 필요함)
      • Switch에 장애가 생기면, 접속 문제가 발생함 (이중화하여 Active – Standby로 동작하도록 세팅함)
그림1) Server Side Load Balancing
  • Client Side Load Balancing
    • Server Side Load Balancing의 문제점을 해결하고자 나옴 개념임
    • Switch를 거치지 않고 바로 서버로 요청하는 방식임
    • 즉, Switch에서 하는 분산 역할을 클라이언트 소프트웨어에서 처리하자는 것임
    • 자바에선 Ribbon을 이용함
      • 각 서버의 host정보를 일일이 설정이 필요함
      • Eureka를 함께 사용하면 따로 설정을 하지 않아도 됨
그림2) Client Side Load Balancing
참고
  • http://blog.leekyoungil.com/?p=259

2016년 11월 12일 토요일

Docker 명령어 모음

Stop all containers
 $ docker kill $(docker ps -q)

Remove all containers
 $ docker rm $(docker ps -a -q)

Delete all 'untagged/dangling' (<none>) images
 $ docker rmi $(docker images -q -f dangling=true)

Remove all docker images
 $ docker rmi $(docker images -q)

Remove all docker volumes
 $ docker volume ls -qf dangling=true | xargs -r docker volume rm

Docker 소개

도커?
Docker는 컨테이너 플랫폼이다.

컨테이너?
컨테이너는 서버 동작하기 위해 필요한 코드, 런타임, 시스템 툴, 시스템 라이브러리들을 포함하는 소프트웨어의 부분이다.

가상머신과 도커 비교
가상머신는 어플리케이션, 바이너리, 라이브러리, 게스트 OS를 포함하고 있다.
도커는 어플리케이션, 바이너리,라이브러리는 포함하고 커널을 서로 공유한다. 
즉, 도커를 사용함으로써 게스트OS 동작하는데 필요한 자원을 절감할 수 있따.

참고
https://www.docker.com/what-docker