본문 바로가기

분류 전체보기28

CORS (Cross-Origin Resource Sharing)란 무엇일까? ✔ CORS란? 교차 출처 리소스 공유(Cross-Origin Resource Sharing, CORS)이다. 도메인이 다른 도메인에 리소스를 요청할 때 접근 권한을 부여하는 메커니즘 추가 HTTP헤더를 사용하여, 실행 중인 웹 애플리케이션이 다른 출처의 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제 웹 애플리케이션은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 교차 출처 HTTP 요청을 실행 ✔ SOP란? 동일 출처 정책(Same-Origin Policy)이다. 브라우저가 다른 출처의 리소스 접근을 금지하는 정책. 자신의 출처와 동일한 리소스만 불러올 수 있다. 따라서 다른 출처의 리소스를 불러오기 위해서는 그 출처에서 올바른 CORS 헤더를 포함한 응답을 반환해주어야.. 2022. 1. 14.
동기화 문제의 해결책 (Mutex, Semaphore) 동기화 문제 동기화 : 한정적인 시스템 자원에 여러 스레드가 동시에 접근해서 사용하면 문제가 발생할 수 있다. 이 문제를 방지하기 위해 여러 스레드에게 하나의 자원에 대한 처리 권한을 주거나 순서를 조정하는 기법이다. 임계 영역 (Critical Section) 동일한 자원을 동시에 접근하는 작업(ex. 공유 변수)을 실행하는 코드 영역을 임계영역 (Critical Section)이라고 한다. 동기화 기법 유저 모드의 동기화 커널의 힘을 빌리지 않는 동기화 기법(커널의 코드가 실행되지 않음.) 성능상 이점이 있으나 기능상의 제한이 존재. 임계 구역 기반의 동기화, 인터락 함수 기반의 동기화. 커널 모드의 동기화 커널에서 제공하는 동기화 기능을 이용하는 방법. 커널 모드로의 변경이 필요하고 이는 성능 저하.. 2021. 12. 13.
Process/Thread 정리, 차이점 프로세스(Process) 프로세스는 실행 중인 프로그램으로 디스크로부터 메모리에 적재되어 CPU 의 할당을 받을 수 있는 것을 말한다. 운영체제로부터 주소 공간, 파일, 메모리 등을 할당받으며 이것들을 총칭하여 프로세스라고 한다. 메모리에 올라와 실행되고 있는 프로그램의 인스턴스(독립적인 개체) 운영체제로부터 시스템 자원을 할당받는 작업의 단위 프로세스는 각각 독립된 메모리 영역(Code, Data, Stack, Heap의 구조)을 할당받음 기본적으로 프로세스당 최소 1개의 스레드(메인 스레드)를 가지고 있다. 각 프로세스는 별도의 주소 공간에서 실행되며, 한 프로세스는 다른 프로세스의 변수나 자료구조에 접근할 수 없다. Code : 코드 자체를 구성하는 메모리 영역(프로그램 명령) Data : 전역변수.. 2021. 12. 4.
HTTP 메서드 GET vs POST 둘 다 HTTP 프로토콜을 이용해 서버에 데이터를 전달하는 방식이다. GET - 서버로부터 정보를 조회하기 위해 설계된 메소드 - 요청을 전송할 때 필요한 데이터를 HTTP Request Message의 Header 부분의 URL에 담아 전송 - URL의 끝에 ?와 함께 Key=Value 형태의 쌍을 이루는 요청 파라미터를 붙임 - 요청 정보가 여러 개일 경우 '&'로 구분 ex) www.urladdress.xyz?name1=value1&name2=value2 - 이를 쿼리스트링이라고 함 특징 - URL에 쿼리스트링을 붙이는 방식이기 때문에 길이 제한이 있어 대용량 데이터 전송이 어렵다. 한 번 요청 시 전송 데이터(주솟값 + 파라미터)의 양은 255자로 제한된다.(HTTP/1.1은 2048자) - 요청.. 2021. 11. 30.