- 일정 : 2024.01.04 ~ 2024.??.?? (총 10주 예상)
- 매주 목요일 8시
코엔 | 승렬 | 민기 |
---|---|---|
코엔 깃허브 | 승렬 깃허브 | 민기 깃허브 |
- 매주 30페이지씩 읽어옵니다. 매주 스터디 종료시에 다음주 읽어올 분량(약 30p)을 정합니다.
- 매주 2~3명이 랜덤으로 발표하게 됩니다.
- 발표 자료는 발표 전 까지 GitHub 저장소에 Pull Request로 올려주세요.
- 파일명은 해당 week에
이름.md
으로 만들어주세요. - 발표시간은 10~15분 내외로 합니다.
- 본인이 이해 하시되, (혹은 이해 못하겠으면 오셔서 질문해주셔도 됩니다!) 요점만 전달해주세요.
- 발표 자료에 큰 힘을 쏟지 않으셔도 된다는 말씀을 드립니다.
단순 책 읽기 및 전달하기가 아닌, 위와 같이 생각을 나누는 스터디가 되는 것이 더 좋은 방향이라고 판단하여, 스터디의 진행 방향을 개선해보기로 했습니다.
- 벌금제도 운영보다는 3회 이상 무단 불참 시 스터디에서 제외
- 패널티가 없는 불참
- 이직 및 취업 준비생의 해당 주 면접(과제)준비를 하는 경우
- 야근, 회식 등
- 집안 사정
- 건강 문제
- 패널티가 있는 불참
- 개인적인 약속
- 자다가 못나오는 경우
- 이외 상식선에서 허용되지 않는 기타 사유 등
1장. 동시성 소개 21p
__무어의 법칙, 웹 스케일, 그리고 혼란 22p
__동시성이 어려운 이유 25p
____레이스 컨디션 25p
____원자성 27p
____메모리 접근 동기화 30p
__데드락, 라이브락, 기아 상태 33p
____데드락 33p
____라이브락 37p
____기아 상태 40p
__동시실행 안전성 판단 43p
__복잡성 속의 단순함
2장. 코드 모델링: 순차적인 프로세스간의 통신
__동시성과 병렬성의 차이
__CSP란 무엇인가?
__동시성을 지원하는 언어의 장점
__Go의 동시성에 대한 철학
3장. Go의 동시성 구성 요소
__고루틴
__sync 패키지
____WaitGroup
____Mutex와 RWMutex
____Cond
____Once
____Pool
__채널
__select 구문
__GOMAXPROCS 레버
__결론
4장. Go의 동시성 패턴
__제한
__for-select 루프
__고루틴 누수 방지
__or-채널
__에러 처리
__파이프라인
__파이프라인 구축의 모범 사례
____몇몇 유용한 생성기
__팬 아웃, 팬 인
__or-done 채널
__tee 채널
__bridge 채널
__대기열 사용
__context 패키지
__요약
5장. 확장에서의 동시성
__에러 전파
__시간 초과 및 취소
__복제된 요청
__속도 제한
__비정상 고루틴의 치료
__요약
6장. 고루틴과 고 런타임
__작업 가로채기
____작업 또는 연속 가로채기
__이 모든 것을 개발자에게 보여주는 방법
__결론
부록
__고루틴 에러 분석
__레이스 탐지
__pprof
- 1주차 : 1장 전체