네트워크2 [CS] CS 기술면접 (2) 쓰레드란?쓰레드는 프로세스 내에서 실행되는 최소 실행 단위입니다. 하나의 프로세스는 여러 개의 쓰레드를 가질 수 있으며, 각 쓰레드는 프로세스의 메모리를 공유하면서 독립적으로 실행됩니다. 경량성: 프로세스보다 적은 자원으로 실행되며, 컨텍스트 스위칭 비용이 적음.메모리 공유: 동일한 프로세스 내의 쓰레드들은 코드, 데이터, 힙 메모리를 공유하지만, 각자의 스택 메모리는 별도로 할당됨.병렬 처리: 멀티 쓰레드를 활용하면 CPU를 효율적으로 사용할 수 있으며, 동시성 및 병렬성을 향상시킬 수 있음. 멀티 쓰레드의 장점과 단점은?장점: CPU 활용 극대화, 응답 속도 향상, 작업 분리 가능단점: 동기화 문제 발생 가능(데드락), 문맥 전환 비용 발생쓰레드 동기화 문제 해결 방법은?synchronized 키워.. 2025. 3. 10. [네트워크] 프록시 서버 너는 누구냐? 프록시 서버란?프록시 서버(Proxy Server)는 네트워크에서 클라이언트와 서버 간의 중간에 위치하는 중개 서버를 의미합니다.클라이언트가 요청을 보낼 때, 직접 서버에 요청하지 않고 프록시 서버를 거쳐 요청을 전송하며, 서버의 응답 또한 프록시 서버를 통해 클라이언트에 전달됩니다. 이로 인해 클라이언트와 서버는 직접적으로 통신하지 않고, 프록시 서버가 대신 데이터를 주고받는 역할을 합니다.프록시 서버는 다양한 목적으로 사용될 수 있으며, 보안, 성능 최적화, 접근 제어, 콘텐츠 캐싱 등 여러 측면에서 중요한 역할을 합니다. 프록시 서버란 대충 중간에서 요청을 받아서 서버로 전달해주는 역할이라고 생각하면 된다.그렇지만 우리는 이러한 의문이 생긴다. "왜 굳이 중간에 중개자를 두는 거지?" 프록시 서버의.. 2024. 10. 7. 이전 1 다음