본문으로 건너뛰기
피드

공항 보안검색이 랜덤하게 느껴지는 이유를 분산 시스템으로 까보기

general 약 9분

공항 보안검색의 짜증 포인트는 단순히 느린 게 아니라 예측 불가능한 분산 시스템처럼 동작한다는 데 있다는 글이다. 저자는 여러 나라 공항에서 반복해서 본 지연, 예외 처리, 사람 의존성, 책임 부재를 분산 시스템의 부분 장애, 꼬리 지연, 조정 비용으로 해석한다.

  • 1

    공항 보안검색의 핵심 문제는 평균 속도가 아니라 변동성과 꼬리 지연임

  • 2

    가방 검사, 장비 고장, 규칙 해석 차이 같은 예외가 실제로는 정상 경로처럼 자주 발생함

  • 3

    사람이 상태를 가진 노드처럼 동작하면서 같은 입력에도 다른 결과가 나오는 비결정성이 생김

  • 4

    엔드투엔드 경험을 책임지는 소유자가 없으면 각 조직은 자기 지표만 최적화하고 전체 흐름은 망가짐

공항 보안검색의 진짜 짜증은 느림이 아니라 랜덤함임

  • 저자는 공항 보안검색을 두고 “어느 나라가 이상해서” 생기는 문제가 아니라고 봄

    • 뉴욕, 마라케시, 나이로비, 리마, 알마티, 취리히, 아테네, 베이징, 방콕 등 완전히 다른 공항에서 비슷한 실패 패턴을 봤다는 게 출발점임
    • 어떤 날은 거의 고속도로처럼 지나가고, 어떤 날은 같은 공항인데도 완전 난장판이 됨
  • 문제는 보안검색이 항상 느린 게 아니라, 지연의 분산이 너무 크다는 점임

    • 항상 40분 걸린다면 사람은 그에 맞춰 움직이면 됨
    • 그런데 5분일 수도 있고 50분일 수도 있으니, 승객은 결국 시간을 보험처럼 과하게 넣게 됨
  • 그래서 이 글의 핵심 비유는 꽤 개발자스럽다: 공항 보안검색은 하나의 줄이 아니라 분산 시스템임

    • 공항 당국, 국가 보안기관, 민간 보안업체, 출입국, 항공사 정책, 규제기관, 장비 업체, 교대 근무자가 한 공간에서 동시에 움직임
    • 이 중 일부는 서로 소통하지만, 전체를 완전히 통제하는 단일 주체는 없음

예외 처리가 사실상 정상 경로가 됨

  • 공항 보안검색은 해피 패스만 보면 꽤 빠르고 깔끔함

    • 짐 올림, 스캔함, 지나감, 끝
    • 문제는 실제 대규모 시스템에서는 예외가 드문 일이 아니라는 점임
  • 가방 하나가 애매하게 걸리면 전체 흐름이 바로 흔들림

    • 위험해서가 아니라 그냥 애매해서 잡히는 경우가 있음
    • 규칙을 누군가 잘못 이해하거나, 장비가 잠깐 맛이 가거나, 승객이 스크립트 밖 행동을 하면 곧바로 수동 처리로 넘어감
  • 수동 처리 경로는 처리량 관점에서 최악의 조합을 갖고 있음

    • 한 명의 직원이 한 개의 가방을 끝까지 봐야 하는 직렬 처리임
    • 검사된 가방이 다시 흐름에 들어오면서 재시도와 대기열을 만듦
    • 판단에는 현장 규칙, 경험, 상급자 확인 같은 맥락이 필요함

중요

> 예외가 자주 발생하고 그 예외 경로가 느리다면, 그건 더 이상 예외가 아님. 그게 그냥 시스템의 본모습임.

사람은 무상태 노드가 아님

  • 글에서 제일 찔리는 표현은 “인간은 상태를 가진 노드”라는 부분임

    • 피로, 기분, 기억, 자신감, 두려움, 직전 사고 경험이 모두 처리 결과에 영향을 줌
    • 기계처럼 요청 하나 처리하고 깨끗하게 초기화되지 않음
  • 그래서 같은 공항, 같은 규칙, 같은 승객이어도 결과가 달라질 수 있음

    • 누가 근무 중인지
    • 몇 시인지
    • 지난 한 시간 동안 사고가 몇 번 있었는지
    • 팀이 새로 바뀌었는지, 인원이 부족한지, 감독자가 엄격한지에 따라 처리량이 달라짐
  • 이건 소프트웨어 조직에서도 익숙한 패턴임

    • “이건 앨리스만 알아요” 같은 암묵지가 시스템의 핵심 경로에 들어가면, 사람 하나 빠졌을 때 전체 시스템이 갑자기 다른 행동을 함
    • 겉으로는 시스템이 돌아가지만 실제로는 몇몇 상태 많은 인간이 설계의 빈틈을 메우고 있는 상태임

조정 비용이 처리량을 잡아먹음

  • 저자는 공항 보안검색이 CPU 바운드나 입출력 바운드가 아니라 조정 바운드라고 표현함

    • 스캔 자체보다 규칙 설명, 승객 행동 수정, 줄 재배치, 질문 응답에 시간이 더 많이 들어감
    • “여기는 노트북 꺼내세요”, “저기는 가방에 둬도 돼요”처럼 공항마다 규칙이 다르면 동기 호출이 계속 발생함
  • 규칙이 명시적으로 시스템에 박혀 있지 않으면 매번 사람이 락처럼 끼어듦

    • 표지판은 사람들이 안 읽고, 나머지 규칙은 직원 기억과 현장 관행에 들어 있음
    • 교대조, 검색대, 공항마다 “여기는 이렇게 해요”가 달라지면 외부 사용자 입장에서는 랜덤하게 느껴질 수밖에 없음
sequenceDiagram
    participant 승객
    participant 검색대
    participant 보안요원
    participant 장비
    participant 감독자

    승객->>검색대: 짐과 소지품 투입
    검색대->>장비: 스캔 요청
    장비-->>보안요원: 애매한 결과 반환
    보안요원->>승객: 추가 확인 요청
    보안요원->>감독자: 규칙 해석 확인
    감독자-->>보안요원: 수동 판단 지시
    보안요원-->>검색대: 흐름 재개

소유자가 없으면 전체 경험은 조용히 썩음

  • 글의 결론은 꽤 냉정함: 아무도 엔드투엔드 경험을 소유하지 않는다는 것

    • 승객이 보안구역 안으로 들어가기까지 걸리는 시간
    • 그 시간의 변동성
    • 최악의 날에 비행기를 놓치게 만드는 꼬리 지연
    • 이런 지표가 누구의 승진이나 평가와 직접 연결되어 있지 않다는 얘기임
  • 각 컴포넌트는 자기 기준으로는 합리적으로 최적화함

    • 보안 조직은 감사 대응과 규정 준수를 우선함
    • 현장 담당자는 나중에 책임지지 않을 선택을 함
    • 장비, 인력, 공간은 각자 다른 제약 안에서 움직임
  • 그 결과는 로컬 최적화와 글로벌 비효율임

    • 각 노드는 자기 방어에 성공하지만, 승객 경험은 계속 흔들림
    • 이건 회사 안에서도 똑같이 보이는 패턴임. 소유자가 없는 지표는 결국 아무도 고치지 않음

레거시 인프라는 꼬리 지연을 고정함

  • 공항은 서버처럼 쉽게 패치할 수 없음

    • 현대 보안검색에는 긴 자동화 라인, 대기 버퍼, 단계별 물리적 분리가 필요함
    • 그런데 많은 터미널은 수십 년 전에 지어졌고, 공간도 좁고, 수직 확장도 어렵고, 구조 자체가 바꾸기 힘듦
  • 결국 사람은 운영자가 아니라 호환성 레이어가 됨

    • 낡은 터미널 구조와 현대 보안 요구사항 사이를 사람이 몸으로 메움
    • 서버의 레거시 노드 하나가 전체 네트워크의 꼬리 지연을 결정하듯, 낡은 검색대 하나가 전체 경험을 끌어내림

불확실성은 사람들의 행동까지 바꿔서 더 큰 혼잡을 만듦

  • 보안검색 시간이 예측 불가능하면 승객은 시간을 더 넣는 식으로 대응함

    • 이건 개인적으로는 합리적인 선택임
    • 하지만 모두가 비슷한 시간대에 여유를 넣으면 수요가 특정 구간에 몰림
  • 큐가 이미 높은 사용률로 돌고 있을 때는 작은 장애도 바로 백로그가 됨

    • 가방 하나 재검사
    • 헷갈린 승객 한 명
    • 장비 하나의 짧은 문제
    • 낮은 부하에서는 흡수될 일이 높은 부하에서는 줄 전체를 흔듦
  • 그래서 공항 보안검색의 랜덤함은 단순한 불편이 아니라 피드백 루프임

    • 예측 불가능함이 사람들을 일찍 오게 만들고
    • 몰린 도착이 큐를 불안정하게 만들고
    • 불안정한 큐가 다시 예측 불가능함을 키움

기술 맥락

  • 이 글에서 중요한 선택은 공항 보안검색을 “운영 미숙”이 아니라 분산 시스템 문제로 모델링한 거예요. 그렇게 보면 특정 직원이나 특정 국가 탓으로 돌리기보다, 부분 장애와 조정 비용이 어떻게 전체 경험을 흔드는지 볼 수 있거든요.

  • 특히 예외 경로를 보는 방식이 개발자에게 꽤 유용해요. 대규모 서비스에서도 장애 대응, 수동 승인, 데이터 보정 같은 일이 드물다고 가정하면 설계가 계속 깨져요. 실제 트래픽에서 자주 발생한다면 그 경로는 제품의 핵심 경로로 다뤄야 해요.

  • 꼬리 지연도 같은 맥락이에요. 평균 통과 시간이 괜찮아 보여도 사용자가 기억하는 건 최악의 1번이에요. 서비스에서도 평균 응답 시간이 아니라 상위 지연 구간을 봐야 하는 이유가 여기에 있어요.

  • 마지막으로 소유권 문제가 커요. 공항에서 “보안구역까지 걸리는 시간”을 책임지는 사람이 없으면 각 조직은 자기 지표만 챙겨요. 소프트웨어 조직에서도 엔드투엔드 사용자 경험을 누가 책임지는지 불명확하면, 시스템은 조용히 복잡해지고 사용자는 랜덤함을 겪게 돼요.

재밌는 건 이 글이 공항 얘기를 하면서 사실상 대규모 조직과 레거시 시스템 얘기를 한다는 점이다. 평균 지표만 보고 괜찮다고 착각하는 시스템은 결국 사용자가 꼬리 지연으로 대가를 치른다.

댓글

댓글

댓글을 불러오는 중...

general

뉴욕타임스·디애틀랜틱·USA투데이에 Wayback Machine 보존 허용을 요구하는 청원

Save the Archive 청원은 주요 언론사가 Internet Archive의 Wayback Machine 보존을 막지 말고 협력해야 한다고 요구함. 특히 뉴욕타임스, 디애틀랜틱, USA투데이가 AI 우려를 이유로 보존을 제한하는 흐름을 비판하면서, 오히려 생성형 AI 시대일수록 독립적인 웹 아카이브가 더 중요하다고 주장함.

general

검색과 인공지능이 만드는 ‘감시형 웹의 벽정원’

이 글은 오픈 웹이 사라지는 이유를 출판의 문제가 아니라 발견 가능성의 문제로 봐. 구글 검색, 브라우저, 광고, 운영체제, 인공지능 어시스턴트, 신원 확인 인프라가 합쳐지면서 측정되고 수익화되는 웹만 더 잘 보이게 된다는 주장이다.

general

이 대통령, AI ‘초과세수 국민배당’ 논란에 직접 반박

이재명 대통령이 김용범 정책실장의 ‘AI 국민배당금’ 발언을 둘러싼 논란에 직접 나섰다. 핵심은 기업의 초과이윤을 걷겠다는 얘기가 아니라, AI 산업 호황으로 국가에 초과세수가 생기면 그 재원을 국민에게 어떻게 돌려줄지 검토하자는 취지였다는 설명이다.

general

AI 데이터센터 붐에 캐터필러·이튼까지 반도체주처럼 움직이는 중

AI 투자 열풍이 엔비디아 같은 반도체주를 넘어 전력, 냉각, 발전 장비를 파는 전통 산업재 기업 주가까지 끌어올리고 있다는 내용이다. 데이터센터 증설이 물리 인프라 수요를 키우면서 S&P500 산업재 지수와 필라델피아 반도체지수의 45일 상관계수가 0.75까지 올라갔다.

general

시니어 개발자가 자기 전문성을 제대로 설명하지 못하는 이유

이 글은 시니어 개발자가 비즈니스와 자주 어긋나는 이유를 ‘복잡성 관리’와 ‘불확실성 감소’의 충돌로 설명한다. 사업팀은 시장 반응을 빨리 확인하고 싶어 하고, 시니어 개발자는 안정성과 유지보수성을 지키려 하니 같은 요청도 서로 다른 문제로 보인다는 얘기다.