개발자 기술면접 꼬리물기 질문
  • Welcome
  • 01 Java
    • 01-01. Generic
    • Garbage Collection
    • 자료형과 객체 비교
    • 힙(Heap)과 메모리(Memory)
    • JDK 버전과 JRE
    • 스레드(Thread)
    • 예외(Throwable)
    • Call By Value와 Call By Reference
    • String, equals, StringBuffer
    • Thread와 비동기
  • 02 Spring
    • 02-01. Spring 동작 방식
    • @Autowired, @RequiredArgsConstructor
    • 인증(Authentication)과 인가(Authorization)
    • 트랜잭션(Transaction)
    • QueryDSL과 SQL Injection
    • SecurityContextHolder
    • @EqualsAndHashCode
  • 알고리즘과 자료구조
    • Set 자료구조
    • 정렬 알고리즘
    • 우선순위 큐 (Priority Queue)
    • DFS와 BFS
    • 힙(Heap) 자료구조
    • 스택(Stack)과 큐(Queue)
    • 암호화 알고리즘
    • LinkedList
    • 자료구조 - 해시 테이블(HashTable)
    • 자료구조 - ConcurrentHashMap
  • 데이터베이스
    • 기본
    • 인덱스 (Index)
    • 정규화 (Normalization)
    • 파티셔닝과 샤딩(Partitioning & Sharding)
    • 트랜잭션(Transaction)과 락(Lock)
    • 덤프(Dump)
    • Redis
    • 격리 수준(MySQL)
  • 네트워크
    • 전송 계층 (Transport Layer)
    • 네트워크 계층 (Network Layer)
    • Http와 Https
    • IP(Internet Protocol)
    • 프록시 서버
    • Http Protocol
    • 소켓(Socket)
    • 로드 밸런싱(Load Balancing)
  • 디자인 패턴
    • 전략 패턴 (Strategy Pattern)
    • 싱글톤 패턴 (Singleton Pattern)
    • 템플릿 메서드 패턴과 전략 패턴
    • 데코레이터 패턴 (Decorator pattern)
  • 웹
    • CORS 정책
    • 동시성 제어
    • N+1 문제
    • 웹 브라우저 동작원리
    • URI, URL, URN
    • 채팅 아키텍처 설계
  • 개발자
    • 개발 방법론 TDD
  • 운영체제
    • JIT & AOT 컴파일
    • 컨텍스트 스위칭(Context Switching)
    • 프로세스와 스레드
    • 싱글 스레드와 멀티 스레드
  • 코딩테스트
    • Stack / Queue (스택 / 큐)
    • Heap(우선 순위 큐)
    • DP(동적 계획법)
    • DFS(깊이 우선 탐색)
    • BFS(너비 우선 탐색)
    • Greedy(그리디 알고리즘)
    • 해시(Hash)
    • 투 포인터 알고리즘
    • Shortest path
    • 수학적 사고
Powered by GitBook
On this page
  • Q. 프록시 서버란 무엇인가요?
  • Q. 프록시 서버는 어떤 유형이 있나요?
  • Q. 프록시 서버가 접근 제어 등을 할 수 있다고 하셨는데, 구체적으로 어떻게 동작할까요?
  • Q. 그렇다면 캐시 기능은 어떻게 활용될까요?
  1. 네트워크

프록시 서버

Q. 프록시 서버란 무엇인가요?

A. 프록시 서버는 클라이언트와 서버 사이에서 중개자 역할을 하는 서버입니다. 클라이언트가 직접 서버에 요청을 보내는 대신, 프록시 서버가 요청을 받아 서버에 전달하고, 서버의 응답을 다시 클라이언트에게 반환합니다. 이를 통해 IP 주소를 숨길 수 있어 익명성을 제공하거나, 캐싱을 통해 네트워크 속도를 개선할 수 있으며, 접근 제어와 보안 강화 등의 기능을 구현할 수 있습니다. 또한 프록시 서버는 네트워크 트래픽을 최적화하고 부하 분산 역할을 할 수 있습니다.


Q. 프록시 서버는 어떤 유형이 있나요?

A. 프록시 서버는 크게 정방향 프록시(Forward Proxy)와 역방향 프록시(Reverse Proxy)로 나뉩니다.

  • 정방향 프록시(Forward Proxy)

    • 클라이언트가 인터넷의 외부 서버에 요청을 보낼 때, 이 요청을 대신 처리하는 프록시입니다.

    • 클라이언트가 직접 서버에 접근하지 않고 프록시를 통해 요청을 우회하기 때문에, 익명성과 보안을 위해 많이 사용됩니다.

  • 역방향 프록시(Reverse Proxy)

    • 클라이언트가 요청을 보낼 때, 서버 쪽에서 중개하는 프록시입니다.

    • 외부 클라이언트가 내부 서버에 직접 접근하지 않고 역방향 프록시를 통해 서버에 요청을 전달합니다.

    • 이는 주로 로드 밸런싱, SSL 처리, 보안을 위해 사용됩니다.


Q. 프록시 서버가 접근 제어 등을 할 수 있다고 하셨는데, 구체적으로 어떻게 동작할까요?

A. 프록시 서버는 요청이 중개되는 지점에서 특정 규칙을 설정해 접근 제어를 수행할 수 있습니다. 주로 IP 필터링, 도메인 차단, 인증 요구 등을 통해 동작합니다. 또한 프록시 서버는 SSL/TLS 암호화된 트래픽도 처리할 수 있어 HTTPS 웹사이트에 대한 접근을 제어할 수 있습니다. 이 경우, 트래픽을 복호화해 분석하고 다시 암호화하여 전달합니다. 정책에 따라 특정 콘텐츠를 차단하거나 허용할 수 있습니다.


Q. 그렇다면 캐시 기능은 어떻게 활용될까요?

프록시 서버는 자주 요청되는 정적 콘텐츠(예: 이미지, CSS, JavaScript 파일 등)를 캐시에 저장하여, 같은 요청이 반복될 경우 서버에 다시 요청하지 않고 캐시에서 데이터를 직접 제공할 수 있습니다. 이는 트래픽 감소와 응답 속도 향상에 기여하며, 서버의 부하를 줄여 성능을 최적화합니다.

PreviousIP(Internet Protocol)NextHttp Protocol

Last updated 7 months ago