Erlang 5

[Erlang OTP]죽지 않는 서버 만들기(2) (feat. supervisor)

이번 포스팅에서는 슈퍼비전 트리에 하위 워커로 추가되는 자식 프로세스들의 정보에 대해 정리하려 한다. 슈퍼바이저의 동작, 설정에 대한 내용은 이전 포스팅에 있다.2018/06/07 - [IT] - [Erlang OTP]죽지 않는 서버 만들기(1) (feat. supervisor) Child Specification 슈퍼바이저의 하위 워커로 등록되는 자식 프로세스들은 다음과 같은 정보를 가진다.1. id : 슈퍼바이저가 자식 프로세스의 정보를 식별할 때 사용된다. 2. start : 자식 프로세스를 시작할 때 호출하는 정보를 정의한다. 이 자식 프로세스를 시작하면 실행할 함수의 모듈명-함수명-파라미터가 들어간다. - 가져도되고 안가져도 됨 3. restart : 언제 자식 프로세스가 재시작되는지에 대한 설..

IT 2018.06.10

[Erlang OTP]죽지 않는 서버 만들기(1) (feat. supervisor)

?Supervisor슈퍼바이저는 트리 형태로 연결된 하위(자식) 프로세스들을 감시 및 제어하는 감독자(?) 템플릿이다. 프로세스 시작, 종료 뿐 아니라 상태를 감시하고 있다가, 필요한 경우 재시작 시키는 원리로 죽지 않는 서버를 만들 때 유용하게 쓰인다. 하위에 또 다른 슈퍼바이저 프로세스가 들어갈 수 도 있고, 슈퍼바이저마다 자식 프로세스들의 재시작 방식도 설정할 수 있다. ?Supervisor Flag자식 프로세스들의 재시작 방식을 결정하는 요소들이다. 크게는 2가지로 sup_flags, strategy이다. sup_flags는 재시작 주기, 몇 번 재시작할지를 설정하는 값인데, intensity와 period로 구성되어 있다. 예를 들어 동일한 원인으로 서버가 계속해서 죽는다면 재시작 시키는 의미가..

IT 2018.06.09

[Erlang 기초] Erlang 시작하기

Erlang Shell 운영 체제에서는 사용자가 입력한 명령을 하나씩 해석해서 실행시키는 커맨드 인터프리터(command interpreter)를 갖고 있는데, 유닉스(UNIX) 쉘(shell)이나 윈도우 명령 프롬프트(command prompt)가 그 예이다. 얼랭에도 이런 커맨드 인터프리터가 존재하는데, 이를 얼랭 쉘(Erlang shell)이라 부른다. 사용하는 운영 체제의 커맨드 창에서 erl이라고 치면 아래와 같이 생긴 얼랭 쉘이 켜진다. 오늘은 윈도우 환경에서 진행했어요. 맥 유저들은 이전 포스팅을 참고해서 얼랭 쉘을 켜신 뒤 진행하시면 됩니다. 2018/05/30 - [IT/Erlang] - macOS에 Erlang 개발 환경 셋팅하기얼랭 쉘에 간단한 연산을 입력해보자. 아래와 같이 1+2...

IT 2018.06.07

Standard Erlang OTP behaviors

Erlang을 사용하면서 가장 편리하다고 느꼈던 부분은 OTP behavior다. behavior는 공통적인 행위 패턴들을 형식으로 만들어 놓은 것인데, behavior 모듈과 callback 모듈로 나뉜다. behavior 모듈의 경우 Erlang OTP에서 제공하는 부분인데 무정지, 동적 코드 갱신 같은 기능도 있어서 이런 부분에 대한 구현은 신경쓰지 않고 callback 모듈만 만들면 된다는 점이 좋은 것 같다. gen_servergen_statemgen_eventsupervisor 간단하게 살펴 보면 대략 아래와 같은 행동을 수행한다.gen_server : 서버-클라이언트에서 서버 구현. gen_statem : state machine.gen_event : 이벤트 처리.supervisor : su..

IT 2018.05.31

macOS에 Erlang 개발 환경 셋팅하기

맥북에서 Erlang으로 개발하려면 3가지를 설치해야 하는데 Erlang OTPRebarIDE 첫 번째로 Erlang OTP, 개발에 필요한 Erlang 라이브러리들이다. homebrew로 간편하게 설치할 수 있다. 터미널에 > brew install erlang이라고 입력하면 끝!!! * 윈도우 환경에서는 Erlang 홈페이지에 들어가 32비트 / 64비트 각자 환경에 맞는 .exe 파일을 다운로드 받아 실행시키면 된다. 설치가 잘 되었는지 확인하기 위해 얼랭 쉘을 실행시켜 본다.> erl아래와 같은 화면이 나오면 성공 ! * ctrl + G -> q 를 입력하면 얼랭 쉘에서 빠져나올 수 있다. Erlang OTP 설치가 완료되면 다음으로는 Rebar를 설치해보자. 얼랭 응용 프로그램들을 컴파일하고 테..

IT 2018.05.30
반응형