캐시: 정의와 캐싱이 사용되는 모든 분야

ℹ️이 콘텐츠에는 광고가 포함되어,판매 발생 시 수익이 발생합니다.(네이버 쇼핑 커넥트, 아마존 어필리에이트, 애드센스 등)

현대의 디지털 환경에서 ‘캐시’는 성능 최적화와 빠른 데이터 접근을 위해 필수적인 기술입니다. 간단히 말해, 캐시는 자주 사용하거나 앞으로 필요할 가능성이 높은 데이터를 임시로 저장해두는 공간을 의미합니다. 이를 통해 컴퓨터나 네트워크 시스템은 데이터를 반복해서 원본 저장소에서 불러오는 대신, 훨씬 빠른 저장소에서 바로 읽어 처리할 수 있습니다.

캐싱은 운영체제, 애플리케이션, 웹사이트, 네트워크 장비, 심지어 하드웨어 수준에 이르기까지 다양한 층위에서 활용되고 있습니다. 그 범위가 매우 넓고, 각 환경에 따라 사용하는 캐시 종류와 목적도 다양합니다.

본 글에서는 ‘캐시’의 기본 개념을 정리하고, 다양한 컴퓨팅 및 네트워크 환경에서 캐싱이 어떻게 적용되는지 그 분류와 사례를 포괄적으로 살펴보겠습니다. 이를 통해 캐싱이 왜 중요한지, 그리고 성능 최적화에 어떻게 기여하는지 명확히 이해할 수 있을 것입니다.

💾 캐시
 ├──Ⅰ. 사용자 단말 장치
├── 운영체제(OS) 캐시
   ├── Windows / macOS / Linux
   ├── iOS / Android
   └── 디스크, 메모리, DNS 캐시 
├── 브라우저 캐시
   ├── Chrome / Safari / Firefox / Edge
   └── HTML, CSS, JS, 이미지, Service Worker 
└── 모바일  캐시
├──  자체 캐시 (예: 유튜브, 인스타그램)
└── 사용자 세션, 썸네일, 로딩 데이터 

 ├──Ⅱ. 서버  애플리케이션
├──  서버 /  서버 캐시
   ├── Nginx / Apache / Node.js
   └── 정적 파일, FastCGI 캐시 
├── 오브젝트 캐시
   ├── Redis / Memcached
   └── 쿼리 결과, 세션 데이터 
└──  프레임워크 캐시
├── 워드프레스 / Laravel / Django 
└── 템플릿, 라우트, DB 쿼리 캐시 

 ├──Ⅲ. 콘텐츠 전송 / 네트워크 인프라
├── CDN (Content Delivery Network)
   ├── Cloudflare / Akamai / Fastly / QUIC.cloud
   └──  세계 캐싱 (정적 파일, 이미지 )
├── 프록시 / 캐시 서버
   ├── Varnish / Nginx Reverse Proxy
   └── 요청-응답 캐싱
└── 네트워크 장비 캐시
├── ARP 캐시
├── NAT 테이블 캐시
└── 라우팅 캐시 

 ├──Ⅳ. 데이터베이스  스토리지 시스템
├── DB 내부 캐시
   ├── MySQL InnoDB Buffer Pool
   ├── PostgreSQL Shared Buffer
   └── MongoDB WiredTiger 
└── 스토리지 캐시
├── 디스크 컨트롤러 캐시
└── SSD/NVMe DRAM 캐시

 ├──Ⅴ. 하드웨어 레벨 캐시
├── CPU 캐시
   ├── L1 / L2 / L3 캐시
   └── 프로세서 명령  데이터 캐싱
└── GPU 캐시
└── 그래픽 연산 속도 최적화

 └──Ⅵ. 클라우드 / 가상화 환경
      ├── 컨테이너 캐시
├── Docker 이미지 / 레이어 캐시
└── 컨테이너 레지스트리 최적화
      ├── 서버리스 함수 캐시
├── AWS Lambda / Google Cloud Functions
└── Warm Start 캐시
      └── 빌드 / 패키지 캐시
           ├── CI/CD 환경 (예: GitHub Actions, GitLab)
           └── 의존성, 빌드 결과 캐시
Cache

Ⅰ. 사용자 단말 장치

  • Client-Side Cache

사용자 단말 장치, 즉 개인 컴퓨터나 스마트폰과 같은 기기에서는 캐시가 다양한 형태로 활용되어 빠른 데이터 접근과 원활한 사용자 경험을 지원합니다. 사용자 단말 장치 캐시는 크게 운영체제(OS) 캐시, 브라우저 캐시, 그리고 모바일 앱 캐시로 나눌 수 있습니다.

💾 캐시
 ├──Ⅰ. 사용자 단말 장치
├── 운영체제(OS) 캐시
   ├── Windows / macOS / Linux
   ├── iOS / Android
   └── 디스크, 메모리, DNS 캐시 
├── 브라우저 캐시
   ├── Chrome / Safari / Firefox / Edge
   └── HTML, CSS, JS, 이미지, Service Worker 
└── 모바일  캐시
├──  자체 캐시 (예: 유튜브, 인스타그램)
└── 사용자 세션, 썸네일, 로딩 데이터 

1. 운영체제(OS) 캐시

운영체제는 시스템 성능을 높이기 위해 여러 종류의 캐시를 사용합니다.

  • 디스크 캐시: 하드디스크나 SSD에서 자주 읽거나 쓸 가능성이 높은 데이터를 메모리(RAM)에 임시 저장해 디스크 입출력 속도를 높입니다.
  • 메모리 캐시: 프로그램 실행 시 자주 참조하는 데이터를 RAM 내에 저장해 처리 속도를 개선합니다.
  • DNS 캐시: 인터넷 도메인 이름을 IP 주소로 변환하는 작업을 빠르게 하기 위해 최근에 조회한 DNS 결과를 저장합니다.
  • 운영체제별 예시: Windows, macOS, Linux, iOS, Android 모두 자체 캐시 시스템을 갖추고 있습니다.

2. 브라우저 캐시

웹 브라우저는 웹페이지 로딩 속도를 높이고 네트워크 트래픽을 줄이기 위해 HTML, CSS, JavaScript, 이미지, 폰트 등의 정적 자원을 로컬에 저장합니다.

  • 브라우저별 특징: Chrome, Safari, Firefox, Edge 등 주요 브라우저가 각각 최적화된 캐시 방식을 제공합니다.
  • Service Worker: 오프라인 상태에서도 웹앱이 동작하도록 지원하는 진보된 캐시 기술입니다.

3. 모바일 앱 캐시

스마트폰 앱들도 사용자 경험 향상을 위해 캐시를 적극 활용합니다.

  • 앱 자체 캐시: 유튜브, 인스타그램 등 대용량 콘텐츠를 다루는 앱들이 미리 데이터를 저장해 빠른 재생이나 탐색을 지원합니다.
  • 세션 및 임시 데이터 캐시: 로그인 상태, 썸네일 이미지, 최근 본 목록 등 사용자의 편의를 위한 임시 저장소 역할을 합니다.

Ⅱ. 서버 및 애플리케이션 캐시

  • Server-Side Cache

서버 측 캐시는 웹사이트와 애플리케이션의 성능을 높이고 서버 부하를 줄이기 위해 매우 중요한 역할을 합니다. 다양한 유형의 서버 캐시가 존재하며, 각각 목적과 적용 범위가 다릅니다.

 💾 캐시
  ├──Ⅱ. 서버  애플리케이션
├──  서버 /  서버 캐시
   ├── Nginx / Apache / Node.js
   └── 정적 파일, FastCGI 캐시 
├── 오브젝트 캐시
   ├── Redis / Memcached
   └── 쿼리 결과, 세션 데이터 
└──  프레임워크 캐시
├── 워드프레스 / Laravel / Django 
└── 템플릿, 라우트, DB 쿼리 캐시 

1. 웹 서버 및 앱 서버 캐시

웹 서버(Nginx, Apache)나 앱 서버(Node.js 등)는 클라이언트의 요청에 빠르게 응답하기 위해 정적 파일(HTML, CSS, 이미지 등)이나 동적 처리 결과를 캐싱합니다.

  • 정적 파일 캐시: 자주 변경되지 않는 파일들을 메모리 또는 디스크에 저장해 빠르게 전달합니다.
  • FastCGI 캐시: PHP 등 동적 콘텐츠 처리 결과를 캐싱하여, 매번 같은 연산을 반복하지 않도록 합니다.

2. 오브젝트 캐시

오브젝트 캐시는 데이터베이스 쿼리 결과, 세션 정보 등 자주 사용되는 데이터를 메모리에 저장해 서버의 처리 속도를 크게 향상시킵니다.

  • Redis: 인메모리 데이터 구조 저장소로, 높은 성능과 다양한 데이터 타입 지원이 특징입니다.
  • Memcached: 단순한 키-값 저장소로 빠른 캐시 처리에 최적화되어 있습니다.

3. 웹 프레임워크 캐시

많은 웹 프레임워크는 자체 캐시 기능을 제공해 템플릿 렌더링, 라우팅, 데이터베이스 쿼리 등의 반복 작업을 효율적으로 처리합니다.

  • 예: 워드프레스, Laravel, Django 등
  • 템플릿 캐시: 렌더링된 HTML을 저장해 재사용
  • 라우트 캐시: URL과 처리 로직 매핑을 빠르게
  • DB 쿼리 캐시: 자주 사용하는 쿼리 결과 저장

서버 및 애플리케이션 캐시는 웹서비스의 안정성과 빠른 응답을 책임지는 핵심 요소로, 적절한 캐시 전략 수립이 서버 비용 절감과 사용자 만족도 향상에 크게 기여합니다.

Ⅲ. 콘텐츠 전송 / 네트워크 인프라 캐시

인터넷 환경에서 사용자에게 빠르고 안정적인 콘텐츠 전달을 위해 네트워크 인프라 단계에서도 다양한 캐시 기술이 활용됩니다. 이 단계의 캐시는 서버와 사용자 간의 물리적 거리 및 네트워크 병목을 줄이는 데 중요한 역할을 합니다.

💾 캐시
 ├──Ⅲ. 콘텐츠 전송 / 네트워크 인프라
├── CDN (Content Delivery Network)
   ├── Cloudflare / Akamai / Fastly / QUIC.cloud
   └──  세계 캐싱 (정적 파일, 이미지 )
├── 프록시 / 캐시 서버
   ├── Varnish / Nginx Reverse Proxy
   └── 요청-응답 캐싱
└── 네트워크 장비 캐시
├── ARP 캐시
├── NAT 테이블 캐시
└── 라우팅 캐시 

1. CDN (Content Delivery Network)

CDN은 전 세계에 분산된 서버 네트워크를 통해 사용자에게 지리적으로 가장 가까운 서버에서 콘텐츠를 전달합니다.

  • 역할: 정적 파일(이미지, CSS, JS, 비디오 등)을 캐싱해 웹사이트 로딩 속도를 향상시키고, 원본 서버의 부하를 줄임
  • 대표 서비스: Cloudflare, Akamai, Fastly, QUIC.cloud 등
  • 장점: 빠른 응답 시간, 트래픽 분산, DDoS 방어 지원

2. 프록시 / 캐시 서버

프록시는 클라이언트와 서버 사이에 위치하여 요청과 응답을 중계하며, 캐시 서버는 이 중간에서 자주 요청되는 데이터를 저장해 재사용합니다.

  • 정방향 프록시: 클라이언트 쪽에 위치하여 사용자 요청을 캐싱 및 필터링
  • 역방향 프록시: 서버 앞단에 위치하여 서버 응답을 캐싱해 부하 감소
  • 대표 소프트웨어: Varnish Cache, Nginx 리버스 프록시 등

3. 네트워크 장비 캐시

네트워크 장비(라우터, 스위치 등)도 내부적으로 캐시를 활용해 네트워크 효율을 높입니다.

  • ARP 캐시: IP 주소와 MAC 주소 매핑 정보를 저장
  • NAT 테이블 캐시: 내부 IP와 외부 IP 변환 정보 저장
  • 라우팅 캐시: 자주 사용하는 경로 정보를 캐싱해 패킷 전송 속도 향상

네트워크 및 콘텐츠 전송 인프라에서의 캐시 활용은 대규모 트래픽 처리와 지연 시간 최소화에 핵심적인 역할을 하며, 글로벌 서비스 제공에 필수적인 요소입니다.

Ⅳ. 데이터베이스 및 스토리지 시스템 캐시

데이터베이스와 저장장치에서도 캐시는 시스템 성능을 극대화하는 데 매우 중요한 역할을 합니다. 데이터 입출력 속도가 병목이 되는 환경에서 캐시를 활용하면 응답 시간을 줄이고 처리량을 향상 시킬 수 있습니다.

💾 캐시
 ├──Ⅳ. 데이터베이스  스토리지 시스템
├── DB 내부 캐시
   ├── MySQL InnoDB Buffer Pool
   ├── PostgreSQL Shared Buffer
   └── MongoDB WiredTiger 
└── 스토리지 캐시
├── 디스크 컨트롤러 캐시
└── SSD/NVMe DRAM 캐시

1. 데이터베이스 내부 캐시

데이터베이스 관리 시스템(DBMS)은 디스크 I/O를 최소화하고 쿼리 처리 속도를 높이기 위해 내부 캐시를 사용합니다.

  • MySQL InnoDB Buffer Pool: 자주 읽는 데이터 페이지와 인덱스를 메모리에 저장해 디스크 접근을 줄임
  • PostgreSQL Shared Buffer: 쿼리 실행에 필요한 데이터 블록을 공유 메모리에 캐시하여 빠른 접근 제공
  • MongoDB WiredTiger 캐시: WiredTiger 스토리지 엔진은 자주 사용하는 데이터를 메모리에 유지해 성능 최적화

이러한 내부 캐시는 데이터베이스의 전체 성능과 응답 시간에 직접적인 영향을 줍니다.

2. 스토리지 캐시

스토리지 계층에서는 물리적 저장장치의 특성에 따라 캐시가 작동합니다.

  • 디스크 컨트롤러 캐시: 하드디스크 컨트롤러에 내장된 메모리가 최근 읽기/쓰기 데이터를 임시 저장해 디스크 작업을 가속화
  • SSD/NVMe DRAM 캐시: SSD 내부에 DRAM 캐시를 두어 NAND 플래시 메모리보다 빠른 임시 저장 공간을 확보, 입출력 지연 감소

스토리지 캐시는 저장장치의 속도 차이를 보완해 데이터 처리 병목 현상을 줄이고, 데이터베이스나 파일 시스템의 효율성을 높입니다.

Ⅴ. 하드웨어 레벨 캐시

하드웨어 레벨 캐시는 컴퓨터 내부에서 처리 속도를 극대화하기 위해 프로세서 및 그래픽 처리 장치에 내장된 초고속 메모리입니다. 이 캐시는 CPU나 GPU가 데이터를 빠르게 읽고 쓸 수 있도록 지원하여 전반적인 시스템 성능 향상에 중요한 역할을 합니다.

💾 캐시
 ├──Ⅴ. 하드웨어 레벨 캐시
├── CPU 캐시
   ├── L1 / L2 / L3 캐시
   └── 프로세서 명령  데이터 캐싱
└── GPU 캐시
└── 그래픽 연산 속도 최적화

1. CPU 캐시

CPU 캐시는 프로세서 내부에 위치한 소형 고속 메모리로, 메인 메모리(RAM)보다 훨씬 빠르게 데이터를 처리할 수 있도록 돕습니다. 보통 3단계로 구분됩니다:

  • L1 캐시 (레벨 1): 가장 빠르고 용량이 작으며, CPU 코어별로 별도로 존재. 명령어 캐시와 데이터 캐시로 나뉩니다.
  • L2 캐시 (레벨 2): L1보다는 크고 약간 느리지만 여전히 매우 빠른 속도. 보통 코어별로 할당되거나 공유됩니다.
  • L3 캐시 (레벨 3): 코어 전체가 공유하는 비교적 큰 용량의 캐시로, L1/L2 캐시에 없는 데이터를 보충합니다.

이들 캐시들은 CPU가 반복적으로 사용하는 데이터와 명령어를 저장해 메모리 접근 지연 시간을 최소화합니다.

2. GPU 캐시

GPU 캐시는 그래픽 연산을 처리하는 그래픽 처리 장치 내부에 존재하며, 렌더링과 병렬 계산 성능을 높이는 데 도움을 줍니다.

  • GPU 캐시는 텍스처 데이터, 셰이더 명령어, 계산 중간 결과 등을 빠르게 접근 가능하도록 저장합니다.
  • 이는 게임, 3D 그래픽, 머신러닝 연산 등에서 GPU의 처리 효율성을 극대화하는 역할을 합니다.

Ⅵ. 클라우드 / 가상화 환경 캐시

클라우드와 가상화 환경에서는 빠른 배포, 확장성, 비용 효율성을 위해 다양한 캐시 기법이 활용됩니다. 이 캐시는 컨테이너, 서버리스, 그리고 빌드 파이프라인 등에서 성능을 최적화합니다.

💾 캐시
 └──Ⅵ. 클라우드 / 가상화 환경
      ├── 컨테이너 캐시
├── Docker 이미지 / 레이어 캐시
└── 컨테이너 레지스트리 최적화
      ├── 서버리스 함수 캐시
├── AWS Lambda / Google Cloud Functions
└── Warm Start 캐시
      └── 빌드 / 패키지 캐시
           ├── CI/CD 환경 (예: GitHub Actions, GitLab)
           └── 의존성, 빌드 결과 캐시

1. 컨테이너 캐시

  • Docker 이미지 / 레이어 캐시: 컨테이너 이미지는 여러 레이어로 구성되는데, 변경되지 않은 레이어는 재사용하여 빌드 시간을 단축하고 네트워크 전송량을 줄입니다.
  • 컨테이너 레지스트리 최적화: 이미지 풀링 시 캐시된 레이어를 사용해 빠른 배포를 지원합니다.

2. 서버리스 함수 캐시

  • Warm Start 캐시: AWS Lambda, Google Cloud Functions 등의 서버리스 환경에서 함수가 처음 호출될 때 초기화 시간(Cold Start)이 발생하는데, 캐시된 실행 환경을 재사용해 호출 지연을 줄입니다.
  • 이를 통해 서버리스 함수의 응답 속도를 개선하고, 비용 효율적인 운영이 가능합니다.

3. 빌드 / 패키지 캐시

  • CI/CD 환경 캐시: GitHub Actions, GitLab CI 등에서 의존성 라이브러리, 컴파일 결과물, 테스트 결과 등을 캐싱해 반복 빌드 시간을 크게 단축합니다.
  • 이는 개발 주기를 빠르게 하고 리소스 낭비를 줄이는 데 효과적입니다.

클라우드 및 가상화 환경에서의 캐시는 신속한 배포와 높은 확장성, 비용 최적화에 핵심적인 역할을 하며, 현대 IT 인프라 운영의 필수 요소로 자리 잡고 있습니다.

Ⅶ. 결론

  • 캐싱이 IT 생태계 전반에 미치는 영향

캐시는 컴퓨팅 시스템 전반에 걸쳐 성능과 효율성을 획기적으로 향상시키는 핵심 기술입니다. 사용자 단말 장치에서부터 서버, 네트워크 인프라, 데이터베이스, 하드웨어, 그리고 클라우드 환경에 이르기까지, 각 단계에서 적절한 캐싱 전략은 응답 속도 개선, 서버 부하 감소, 네트워크 트래픽 최적화 등 다양한 이점을 제공합니다.

이러한 광범위한 활용은 사용자 경험 향상과 시스템 안정성 강화에 크게 기여하며, 현대 IT 생태계의 필수 요소로 자리 잡고 있습니다.

🔲 앞으로의 캐싱 기술 발전 방향 전망

  • 1. 지능형 캐싱 및 머신러닝 적용
  • 데이터 접근 패턴을 분석해 효율적인 캐시 교체 알고리즘과 예측 캐싱이 발전할 것으로 예상됩니다.
  • 2. 분산 캐시의 고도화
  • 클라우드 및 엣지 컴퓨팅 환경에서 분산 캐시 관리 기술이 더 정교해지고, 글로벌 서비스에서의 일관성과 성능을 동시에 추구하는 방향으로 발전할 것입니다.
  • 3. 하드웨어와 소프트웨어의 통합 최적화
  • CPU, GPU, 메모리 등 하드웨어 캐시와 소프트웨어 레벨 캐시의 협력 및 통합 관리 기술이 강화되어 더욱 빠르고 효율적인 시스템이 구현될 전망입니다.
  • 4. 보안 및 프라이버시 강화 캐싱
  • 개인정보 보호와 데이터 무결성을 고려한 안전한 캐시 관리 기술 개발도 중요한 이슈로 부각될 것입니다.

Similar Posts

  • 컴퓨터 구성요소 4가지

    소프트웨어 개발이나 리눅스 서버 관리와 같은 업무에 있어 컴퓨터가 어떤 구성으로 되어 있는지 기본적인 컴퓨터 구성요소를 개념에 대해 간단히 알아 보겠습니다. 컴퓨터나 스마트폰을 분해해서 보면 주요 부품들을 확인할 수 있습니다. 목차Ⅰ. 사용자 단말 장치1. 운영체제(OS) 캐시2. 브라우저 캐시3. 모바일 앱 캐시Ⅱ. 서버 및 애플리케이션 캐시1. 웹 서버 및 앱 서버 캐시2. 오브젝트 캐시3….

  • 모니터 케이블 종류 4가지(VGA, DVI, HDMI, DP)

    모니터 케이블 종류는 다양하지만 실제로 컴퓨터를 사용하면 크게 VGA, DVI-I, HDMI, DP 4가지 종류로 구분해서 사용할 수 있습니다. 목차Ⅰ. 사용자 단말 장치1. 운영체제(OS) 캐시2. 브라우저 캐시3. 모바일 앱 캐시Ⅱ. 서버 및 애플리케이션 캐시1. 웹 서버 및 앱 서버 캐시2. 오브젝트 캐시3. 웹 프레임워크 캐시Ⅲ. 콘텐츠 전송 / 네트워크 인프라 캐시1. CDN (Content Delivery…

  • 이미지 Lazy Load 장점 4가지와 단점

    레이지 로딩(Lazy Loading)은 웹페이지 로딩 시간을 줄이는 기술입니다. “이미지가 로드 되는 시간을 단축 시킨다”로 정의 내릴 수 있습니다. 페이지의 모든 이미지를 유지하면서 페이지 로드 시간을 개선하고 페이지 크기를 줄임으로서 웹페이지의 속도를 향상 시킵니다. ‘이미지 지연 로드’ 특징은 사용자가 페이지에 접속 후 아래로 스크롤을 할 때 이미지가 표시될 때만 로딩이 됩니다. 즉, 페이지 하단에…

  • 업데이트 업그레이드 차이

    윈도우나 리눅스 외에 IT 업종에 종사하지 않더라도 각종 소프트웨어를 사용하게 되면 update와 upgrade 두 가지 단어를 자연스럽게 접하게 됩니다. 영어 단어 업데이트(update)와 업그레이드(upgrade)는 익숙하며, 컴퓨터와 기계, 전자 제품 및 앱에서 접하는 단어의 차이에 대해 알아 보겠습니다. 목차Ⅰ. 사용자 단말 장치1. 운영체제(OS) 캐시2. 브라우저 캐시3. 모바일 앱 캐시Ⅱ. 서버 및 애플리케이션 캐시1. 웹 서버…

  • ICANN과 registry와 registrar 2개 기관의 차이

    목차Ⅰ. 사용자 단말 장치1. 운영체제(OS) 캐시2. 브라우저 캐시3. 모바일 앱 캐시Ⅱ. 서버 및 애플리케이션 캐시1. 웹 서버 및 앱 서버 캐시2. 오브젝트 캐시3. 웹 프레임워크 캐시Ⅲ. 콘텐츠 전송 / 네트워크 인프라 캐시1. CDN (Content Delivery Network)2. 프록시 / 캐시 서버3. 네트워크 장비 캐시Ⅳ. 데이터베이스 및 스토리지 시스템 캐시1. 데이터베이스 내부 캐시2. 스토리지 캐시Ⅴ….

  • 비트 바이트 개념과 차이 | 8Bit=1Byte

    컴퓨터를 사용할 때 비트Bit와 바이트Byte 두 가지 용어에 대해 자연스럽게 접하게 됩니다. 비트는 컴퓨터에서 사용하는 정보의 최소 단위입니다. 바이트는 8개의 비트가 모여서 1바이트가 됩니다. 정확한 이해를 위해 먼저 비트의 개념부터 이해하도록 해 보겠습니다. 목차Ⅰ. 사용자 단말 장치1. 운영체제(OS) 캐시2. 브라우저 캐시3. 모바일 앱 캐시Ⅱ. 서버 및 애플리케이션 캐시1. 웹 서버 및 앱 서버…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 5   +   2   =