320x100
320x100
동시성 프로그래밍 (Concurrency Programming)
- 프로그램이 동시에 실행되는 것 처럼 보이는 논리적인 개념
: 싱글코어에서 멀티스레드를 동작 시키기 위한 방식
: 멀티태스킹을 위해 여르 스레드를 번갈아가면서 실행
비동기 프로그래밍 (Asynchronous Programming)
- 프로그램의 주 실행 흐름을 멈추고 기다림 없이 바로 다름 작업을 실행하는 방식
: 코드의 실행결과를 별도의 공간에 맡겨둔뒤 결과를 기다리지 않고 다음 코드를 실행
ㆍ병렬처리 방식
=> 비동기 프로그래밍을 통해 병렬처리 방식 구현
병렬성 프로그래밍 (Parrellelism Programming)
- 물리적으로 정확히 동시에 실행되는 방식
: 멀티코어에서 멀티 스레드를 실행시키는 방식
- 데이터 병렬성 (Data Parallelism)
: 전체 데이터를 서브데이터로 나눈뒤, 서브 데이터들을 병렬 처리하여 작업을 수행하는 방법
- 작업 병렬성 (Task Parallelism)
: 서로 다른 작업을 병렬로 처리하는 방법
동시성 VS 병렬성
Refference
300x250
728x90
'Development > Development' 카테고리의 다른 글
[백엔드 개발자 로드맵 2020] 백엔드 서비스 아키텍처 패턴 (0) | 2021.03.17 |
---|---|
[백엔드 개발자 로드맵 2020] 웹 보안 지식 (0) | 2021.03.17 |
[백엔드 개발자 로드맵 2020] 해시 알고리즘과 암호화 알고리즘 (0) | 2021.03.16 |
[백엔드 개발자 로드맵 2020] 서버 사이드와 클라이언트 사이드 (0) | 2021.02.13 |
[백엔드 개발자 로드맵 2020] CDN (Content Delivery Network) (0) | 2021.02.13 |