Go Gradually - Repository

  • CS
  • PS
  • Backend
  • 개발
  • GitHub
  • 홈

non-blocking 1

봉쇄/비봉쇄(Blocking/Non-Blocking), 동기/비동기(Sync/Async), 그리고 이벤트 드리븐 아키텍처

통신(파일 I/O, 네트워크I/O) 개념에서 비동기와 논블로킹 개념은 매우 혼동하기 쉬운 주제이다.네트워크를 정확히 모른다는 것은 장님이 코끼리 만지는 격이니, 이번기회에 제대로 정리하고 넘어가보자. 전제이 방식은 모두, 이 패턴을 따를 때 적용된다.호출자가 어떤 작업을 요청하고,처리자가 그 결과를 돌려준다.코드의 흐름이 동기/비동기인것은 문제에서 제외하고, 통신 개념에서의 동기/비동기에 집중해주길 바란다.코드의 흐름이 동기/비동기인 것과, 외부 서버와의 통신이 동기/비동기인 것은 문제가 발생하는 상황이 다르다.이 과정에서, 호출자의 대응 전략에 집중해보자.참고) 좌측 코드의 흐름은, 블로킹/논블로킹이 결정되지 않은 상태이다. get() 시 데이터가 준비되어 있다면 논블로킹처럼 동작할 것이고, 준비되지 ..

Article/Network - Deep Dive 2025.04.30
이전
1
다음
더보기
프로필사진

Go Gradually - Repository

나 자신에게, 나 스스로가 부끄럽지 않도록

  • 분류 전체보기 (129)
    • Article (29)
      • 도메인 주도 설계 이해하기 (6)
      • 트랜잭션 완전정복 (2)
      • OS - Deep Dive (6)
      • Network - Deep Dive (4)
      • 성능 테스트를 위한 기초 통계학 (1)
      • 개발 꿀팁 (5)
      • 피드 한 줌 (1)
      • 티켓박스 (0)
      • 개인 프로젝트 (3)
    • CS Repo (49)
      • 소프트웨어 공학 - Clean Code & Arc.. (4)
      • 객체지향 & Design Pattern + @ (1)
      • 운영체제 - Dinosaur Book + @ (1)
      • DB (2)
      • 네트워크 - Top-down Approach + .. (26)
      • 데이터 중심 애플리케이션 설계 (1)
      • 도메인 주도 설계 (2)
      • HTTP 완벽 가이드 (8)
      • 엔터프라이즈 애플리케이션 아키텍처 패턴 (0)
      • 프로그래밍 패러다임 (3)
    • WEB BE Repo (23)
      • JAVA (4)
      • Spring (5)
      • JPA (1)
      • AWS (5)
      • 배포 및 운영 (3)
      • 주니어 백엔드 개발자가 반드시 알아야 할 실무 지.. (0)
      • Redis (1)
      • Spring Security (3)
    • PS (12)
      • 이론 (1)
      • Baekjoon OJ (4)
      • Codeforces (7)
    • 개인적 공간 (16)

Tag

직렬화 가능, 배타 잠금, binary search, 티스토리챌린지, Greedy, PS, 1500, 메모리 풀, 외부 단편화, range-lock, math, 오블완, 도메인 서비스, spring jdbctemplate, 메모리 압축, 도메인 이벤트, 내부 단편화, 충돌, JdbcTemplate, JDBC,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

  • GoGradually 의 Repository 입니다.

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • GitHub
  • 피드 한 줌

티스토리툴바