김시용
1. 📌 핵심 개념 정리
✅ 요약하기
각자 해당 챕터에서 중요하다고 느낀 개념이나 아이디어를 간략하게 정리하고 개선 전, 후에 대한 예시 코드를 비교하며 개념을 설명합니다.
- 동시성이 필요한 이유
동시성은 결합을 없애는 전략이다. 즉, 무엇과 언제를 분리하는 전략이다.
-> 애플리케이션 구조와 효율이 극적으로 나아진다. 작은 협력 프로그램 여럿으로 보인다.
= 시스템을 이해하기 쉽고 문제를 분리하기도 쉽다.
응답시간과 작업 처리량 개선으로 인해 동시성이 불가피한 상황도 있다.
-> 대량의 정보를 병렬로 처리하여 동시성 활용
- 동시성의 어려움
- 동시성은 때로 성능을 높여준다.
- 동시성 구현시, 무엇과 언제를 분리하기에 시스템 구조가 크게 달라진다.
- 웹 / EJB 컨테이너 사용해도 동시성 이해 필요.
- 동시성은 다소 부하를 유발한다.
- 동시성은 복잡하다.
- 동시성 버그는 재현하기 어렵다.
- 동시성 구현 위해서는 근본적인 설계 전략을 재고해야 한다.
동시성 구현이 어려운 이유
두 스레드가 같은 변수를 동시에 참조하면 원치 않는 결과가 발생한다.
코드를 컴파일러가 바이트 코드로 처리하면 경로가 수만~수백만 가지가 발생하므로 일부 경로만 문제를 발생시킴.
- 어려움에 대처하는 동시성 방어 원칙
.
- 동시성 테스트 방법 (p.237~)
2. 🤔 이해가 어려운 부분
🔍 질문하기
책을 읽으며 이해하기 어려웠던 개념이나 명확하지 않았던 내용을 정리합니다.
- 개념 또는 원칙의 이름
- 어려웠던 부분
해당 개념이 헷갈리거나 명확하지 않았던 점을 구체적으로 설명합니다. - 궁금한 점
해당 개념이 어떤 원리로 동작하는지, 실무에서 어떻게 활용되는지 등을 질문 형태로 정리합니다.
- 어려웠던 부분
- 개념 또는 원칙의 이름
- 어려웠던 부분
. - 궁금한 점
.
- 어려웠던 부분
- 개념 또는 원칙의 이름
- 어려웠던 부분
. - 궁금한 점
.
- 어려웠던 부분
3. 📚 참고 사항
📢 논의하기
관련된 자료가 있다면 공유하고, 더 깊이 논의하고 싶은 아이디어나 의견을 정리합니다.
- 관련 자료 공유
- 추가 자료
관련 블로그 글이나 공식 문서 링크를 제공합니다.
- 추가 자료
- 논의하고 싶은 주제
- 주제
논의하고 싶은 내용을 간략히 정리합니다. - 설명
논의하고 싶은 이유를 작성합니다.
- 주제