Erlang 란? > ERLANG

본문 바로가기

ERLANG

[질문답변] Erlang 란?

profile_image
devmania
23-06-14 14:23 441 0

본문

Erlang은 1986년에 Ericsson에서 텔레콤 시스템을 위해 개발된 함수형 프로그래밍 언어입니다. 

이 언어는 분산 컴퓨팅, 고수준의 병행성, 고장 내성, 실시간 시스템 등에 특히 강력하며, 원래는 전화 교환 시스템을 위해 설계되었습니다.


Erlang의 주요 특징은 다음과 같습니다:


1. 병행성

Erlang은 강력한 병행 처리 기능을 가지고 있습니다. Erlang 프로세스는 가볍고, 상호 독립적이며, 메시지 패싱을 통해 통신합니다. 이러한 프로세스는 시스템 자원을 공유하지 않기 때문에, 병행 프로그래밍에서 흔히 발생하는 문제들(예: 데드락, 경쟁 상태 등)을 피할 수 있습니다.


2. 분산 컴퓨팅

Erlang은 투명한 분산 프로그래밍을 지원합니다. 이는 개발자가 원격 노드에서 Erlang 함수를 쉽게 호출할 수 있게 해주며, 분산 시스템 개발을 쉽게 만들어줍니다.


3. 고장 내성

Erlang 시스템은 일부 컴포넌트가 실패하더라도 전체 시스템이 계속 작동할 수 있도록 설계되었습니다. 이를 위해, Erlang은 "Let it crash"라는 철학을 따르며, 프로세스 감시, 자동 재시작, 핫 스왑(시스템을 중단시키지 않고 코드를 업데이트하는 기능) 등의 기능을 제공합니다.


4. 실시간 시스템

Erlang은 소프트 실시간 시스템을 지원합니다. 이는 고성능, 낮은 지연 시간, 예측 가능한 응답 시간을 필요로 하는 애플리케이션에 이상적입니다.



Erlang은 이러한 특성 덕분에 메시징, 스토리지, 웹 서버 등과 같은 고성능, 고가용성 시스템을 개발하는 데 널리 사용됩니다. 가장 유명한 Erlang 프로젝트 중 하나는 WhatsApp 메시징 서비스입니다.



댓글목록0

등록된 댓글이 없습니다.
게시판 전체검색
다크모드