cs/ODOQ 31

[ODOQ] 정적 IP 주소 할당 방식, 동적 IP 주소 할당 방식

[One Day One Question]정적, 동적 IP 주소 할당 방식의 차이점에 대해서 설명해 주세요.1. 정적 IP 주소 할당 (Static IP Address)고정된 IP 주소를 수동으로 설정하여 특정 기기에 영구적으로 할당하는 방식입니다.변경되지 않으며, 네트워크 관리자나 사용자에 의해 직접 설정됩니다.특징:항상 동일한 IP 주소를 유지합니다.서버, CCTV, 원격 접속이 필요한 장치 등에 사용됩니다.설정이 복잡할 수 있으며, 관리가 필요합니다.보안 위험이 상대적으로 클 수 있습니다(고정된 IP가 공격 대상이 될 가능성 증가).일반적으로 추가 비용이 발생할 수 있습니다(ISP에서 별도로 제공). 2. 동적 IP 주소 할당 (Dynamic IP Address)네트워크에서 자동으로 할당되는 방식으로..

cs/ODOQ 2025.02.26

[ODOQ] NAT

[One Day One Question]NAT 기능에 대해서 설명해 주세요.NAT(Network Address Translation)는 사설 IP 주소를 공인 IP 주소로 변환하여 인터넷과 통신할 수 있도록 해주는 기술입니다. 1. 공인 IP 주소 부족 문제 해결IPv4 주소는 한정되어 있으며, 모든 장치에 공인 IP를 할당하기 어렵습니다.NAT를 사용하면 하나의 공인 IP를 여러 개의 사설 IP 주소와 공유하여 인터넷에 접속할 수 있습니다.특히 가정, 기업, ISP(인터넷 서비스 제공업체)에서 많이 사용됩니다. 2. 보안 강화내부 네트워크의 사설 IP 주소는 외부에서 직접 접근할 수 없습니다.이는 외부 공격자가 내부 장치의 IP를 직접 알 수 없게 만들어 보안을 강화합니다.방화벽과 함께 사용하면 네트워..

cs/ODOQ 2025.02.25

[ODOQ] CSRF 공격

[One Day One Question]CSRF공격에 대해서 설명해 주세요.  CSRF(Cross-Site Request Forgery, 사이트 간 요청 위조) 공격은 사용자가 신뢰하는 웹사이트를 대상으로, 공격자가 의도하지 않은 요청을 전송하도록 유도하는 보안 취약점입니다. 즉, 사용자의 권한을 악용하여 원치 않는 행동을 수행하게 만드는 공격 방식입니다. 1. CSRF 공격공격자는 사용자가 이미 로그인된 웹사이트에서 특정 요청을 실행하도록 조작합니다.예를 들어, 사용자가 은행 웹사이트에 로그인한 상태에서 공격자가 만든 악성 링크를 클릭하면, 공격자가 설정한 계좌로 돈을 이체하는 요청이 사용자 모르게 실행될 수 있습니다.이 공격은 사용자의 인증 정보(세션 쿠키, 토큰 등) 를 악용하여 실행됩니다.  2...

cs/ODOQ 2025.02.21

[ODOQ] 캐시 스탬피드(Cache Stampede)

[One Day One Question]캐시 스탬피드(Cache Stampede)에 대해서 설명해 주세요.  캐시 스탬피드(Cache Stampede)는 다수의 요청이 동시에 캐시 갱신을 유발하여 서버 부하가 급격히 증가하는 현상을 말합니다. 캐시 만료 시점에 다수의 클라이언트가 동일한 데이터를 동시에 요청하면, 모든 요청이 캐시를 우회하여 데이터베이스(DB) 또는 백엔드 서버로 몰리게 됩니다. 이는 서버 과부하로 이어져 성능 저하, 서비스 지연, 심지어 서버 다운으로 연결될 수 있습니다.캐시 스탬피드 발생 과정캐시가 만료되어 클라이언트가 캐시에서 데이터를 가져오지 못함.동일한 데이터에 대한 요청이 다수의 클라이언트로부터 동시에 발생.모든 요청이 데이터베이스나 원본 서버로 전달되며 부하가 급증.서버 응답..

cs/ODOQ 2025.01.23

[ODOQ] 지연로딩, 즉시로딩

[One Day One Question]지연로딩과 즉시로딩에 대해서 설명해 주세요. 지연 로딩(Lazy Loading)과 즉시 로딩(Eager Loading)은 주로 데이터베이스나 웹 애플리케이션에서 데이터를 로드하는 방법을 설명할 때 사용되는 용어입니다. 1. 지연 로딩(Lazy Loading)개념:필요할 때 데이터를 로드하는 방식.객체를 처음 사용할 때(혹은 요청 시점)에 데이터를 가져옵니다.특징:초기 로드 시간이 짧아집니다. (필요한 데이터만 불러오기 때문)불필요한 데이터 로드를 방지할 수 있어 메모리 효율적.하지만, 데이터를 요청하는 시점마다 추가적인 쿼리가 실행될 수 있습니다.예시:웹페이지에서 이미지를 스크롤로 보여줄 때, 스크롤 위치에 따라 이미지를 로드하는 방식.관계형 데이터베이스에서, 연관..

cs/ODOQ 2025.01.19

[ODOQ] 스케일 업(Scale-Up) , 스케일 아웃(Scale-Out)

[One Day One Question]스케일 업(Scale-Up)과 스케일 아웃(Scale-Out)에 대해서 설명해 주세요. 스케일 아웃(Scale-Out)과 스케일 업(Scale-Up)은 시스템의 성능과 용량을 확장하는 방식에서의 차이를 나타냅니다. 1. 스케일 업 (Scale-Up)개념:기존의 단일 시스템(서버, 데이터베이스 등)의 성능을 높이는 방식.더 강력한 하드웨어(더 빠른 CPU, 더 많은 메모리, 더 큰 디스크 용량 등)로 업그레이드하여 확장.특징:장점:관리가 단순하며 추가적인 소프트웨어 변경이 필요 없을 때가 많음.단일 시스템으로 유지되므로 복잡성이 적음.단점:물리적 하드웨어의 한계에 도달하면 더 이상 확장 불가능.고성능 하드웨어의 비용이 급격히 증가할 수 있음.적용 사례:데이터베이스 서..

cs/ODOQ 2025.01.17

[ODOQ] ACID란?(데이터베이스)

[One Day One Question]ACID에 대해서 설명해 주세요. ACID는 데이터베이스 관리 시스템(DBMS)에서 트랜잭션의 신뢰성과 안정성을 보장하기 위해 정의된 네 가지 속성을 나타냅니다. ACID는 각각 Atomicity, Consistency, Isolation, Durability의 약자입니다. 1. Atomicity (원자성)설명: 트랜잭션이 모두 실행되거나, 전혀 실행되지 않아야 함을 보장합니다.즉, 트랜잭션 내의 작업이 일부만 실행되는 일은 없고, 실패 시 모든 작업이 롤백됩니다.예: 은행에서 계좌 A에서 B로 돈을 이체할 때, A에서 돈이 빠져나갔지만 B에 입금되지 않으면 안 됩니다. 트랜잭션은 둘 다 완료하거나 둘 다 실행하지 않아야 합니다. 2. Consistency (일관성..

cs/ODOQ 2025.01.16

[ODOQ] REST란?

[One Day One Question]REST에 대해서 설명해 주세요.REST(Representational State Transfer)는 웹 서비스 설계를 위한 아키텍처 스타일로, 클라이언트와 서버 간의 통신을 단순하고 효율적으로 하기 위해 설계되었습니다. REST는 HTTP 프로토콜을 기반으로 동작하며, 웹 애플리케이션 개발에서 가장 널리 사용되는 표준 중 하나입니다. 1. REST의 주요 특징자원(Resource) 중심 설계REST에서는 모든 것을 자원으로 간주합니다.자원은 고유한 URI(Uniform Resource Identifier)로 식별됩니다.예:https://example.com/users/123 (사용자 ID 123인 사용자)https://example.com/products/45 (..

cs/ODOQ 2025.01.15

[ODOQ] 로드 밸런싱(Load Balancing)

[One Day One Question]로드 밸런싱(Load Balancing)에 대해서 설명해 주세요. 로드 밸런싱(Load Balancing)은 네트워크 트래픽이나 컴퓨팅 작업을 여러 서버나 리소스에 분산하여 시스템의 성능, 신뢰성, 가용성을 최적화하는 기술입니다. 로드 밸런서는 이를 수행하는 하드웨어 장치나 소프트웨어 애플리케이션을 의미합니다. 로드 밸런싱의 주요 목적성능 향상: 여러 서버가 동시에 작업을 처리하므로 응답 속도와 처리 능력을 개선합니다.가용성 증가: 하나의 서버에 장애가 발생해도 다른 서버가 요청을 처리할 수 있도록 하여 서비스를 중단 없이 유지합니다.확장성: 필요에 따라 서버를 추가하여 트래픽 증가에 유연하게 대응할 수 있습니다.리소스 최적화: 서버 간 작업을 고르게 분산해 특정 ..

cs/ODOQ 2025.01.10

[ODOQ] Connection Timeout, Socket Timeout, Read Timeout

[One Day One Question]Connection Timeout, Socket Timeout, Read Timeout에 대해서 설명해 주세요. Connection Timeout, Socket Timeout, Read Timeout은 네트워크 프로그래밍에서 연결과 통신 과정에서 발생할 수 있는 서로 다른 시간 초과 조건을 나타냅니다  1. Connection Timeout설명:클라이언트가 서버에 연결을 시도할 때, 연결이 완료되기까지 허용되는 최대 시간입니다.이 시간 동안 서버가 응답하지 않으면 연결 시도가 중단되고 오류가 발생합니다.주요 사용 사례:서버가 응답하지 않거나 네트워크 장애로 인해 연결이 지연될 때, 무한히 대기하지 않고 일정 시간 후에 요청을 중단합니다.발생 시점:TCP 연결의 3-..

cs/ODOQ 2025.01.04