⚙️ Ops/CS2023. 9. 29. 16:31Context Switching & Thread Scheduling

📘 Process 구조 운영체제에서 모든 프로그램은 실행을 하면 메모리로 올라와서 프로세스로 올려집니다. 📌 프로세스의 구조 MetaData (PID, Mode, Priority ... 등등) Data(Heap) Files Code MainThread (Stack, Instruction Pointer) Stack은 메모리 영역으로 지역 변수가 저장되고 기능이 실행되는 영역입니다. Instruction Pointer는 스레드가 실행할 다음 명령어 주소의 포인트 역할만 합니다. 프로세스의 Stack, Instruction 부분만 제외하면 나머지 모든 스레드들이 MetaData, Data, Files, Code를 공유합니다. 📘 Context Switching 각각의 어플리케이션과 프로세스는 독립적으로 실행됩..

⚙️ Ops/CS2023. 4. 14. 12:35Race Condition

💡 Race Condition 여러 개의 프로세스가 공유 자원에 동시 접근할 때 실행 순서에 따라 결과값이 달라질 수 있는 현상 임계구역은 아래의 세가지 요구조건을 만족해야 유효한 알고리즘이 된다 Mutual Exclusion(상호 배제) 하나의 자원에는 하나의 프로세스만 접근 가능할 수 있어야 함 Progress(진행) 임계구역이 비었으면 자원을 사용할 수 있어야 한다 (Deadlock Free) Bounded Waiting(한계 대기) 언젠가는 임계구역에 진입할 수 있어야 한다 > 경쟁상태는 메모리를 공유하기 때문에 발생하며 해결방법은 스레드의 순차적 실행(동기화)을 보장하면 됨 임계구역의 일반적인 형태 do { wants[i] = true; // 프로세스가 공유 자원을 사용하겠다고 선언 while ..

⚙️ Ops/CS2023. 4. 14. 12:34Proxy & Load Balancer & WAS & VPC

💡 Proxy Forward Proxy 클라이언트와 가까이 있는 서버로 클라이언트를 대신해 서버에 요청 전달 주로 캐시서버로 사용 클라이언트의 정보 숨김 Reverse Proxy 서버를 대신해서 응답을 클라이언트로 전달 트래픽 로드밸런싱 서버 정보 숨김 💡 Load Balancer Scale-Up 서버의 하드웨어 성능을 높이는 방법 Scale-Out 서버의 개수를 늘려 부하분산 로드밸런서의 종류 L2 - Mac 주소 기반 로드밸런싱 L3 - IP 주소 기반 로드밸런싱 L4 - IP & Port기반 로드밸런싱 L7 - 클라이언트 요청 기반 로드밸런싱 💡 AWS Auto Scaling 장점 동적 스케일링 사용자의 요구에 따라 리소스의 동적 스케일링 로드 밸런싱 오토스케일링된 서버에 동적인 부하 분산 타겟 트..

⚙️ Ops/CS2023. 4. 14. 12:31HTTP

💡 HTTP API 설계 HTTP API 컬렉션 = POST 기반 등록 - 서버가 리소스 URI 결정 HTTP API 스토어 = PUT 기반 등록 - 클라이언트가 리소스 URI 결정 HTML Form 사용 = 순수 HTML + HTML Form 사용, GET, POST만 지원, 컨트롤 URI 사용(동사) URI 설계 참고 사이트 Document - 단일 개념, ex) /users/20, /files/abc.jpg Collection - 서버 주체의 리소스 디렉터리, 리소스의 생성,관리 ex) /users Store - 클라이언트 주체의 리소스 저장소, ex) /files Controller, Controll URI - 위의 사항들로 해결이 힘든 추가 프로세스 실행 (동사 사용) Status Code 1x..

⚙️ Ops/CS2023. 4. 14. 12:29Web Application & Network

💡 Native Application 장점 웹앱보다 빠르고, 설치된 기기의 시스템/리소스 접근 용이 (ex: GPS , Camera) 오프라인 환경에서 사용가능, 웹앱에 비해 보안성 ↑ , 임베디드와는 조금 다른 개념 단점 느린 업데이트, 앱스토어에 승인이 까다롭고 비용발생 웹앱에 비해 개발비용 증가 (플랫폼 호환성) 💡 TCP/IP OSI 7 계층에선 3계층인 IP와 4계층인 TCP를 합친 통신규약의 모음(프로토콜 스택) TCP/IP 4계층은 데이터가 계층이동을 할때마다 헤더를 추가하고(캡슐화), 추가된 헤더를 읽고 알맞은 행동을 취한 후 ,헤더 제거(역캡슐화) TCP 3 Way HandShaking Listen - Received - Established SYN Flag - SYN/ACK Flag -..

⚙️ Ops/CS2023. 4. 3. 08:29Cookie & Session & SQL Injection & CSRF

💡 Cookie 서버에서 클라이언트에 데이터를 저장, 클라이언트에 저장된 쿠키를 이용하여 데이터를 가져옴 Cookie Option Domain 도메인 불일치 시 쿠키 전송 X 도메인이란? 서브 도메인(ex: www)을 제외한 URL 중 포트까지의 URL을 의미함 이 옵션을 통해 도메인이 다를때 발생할 수 있는 취약점 공격에 대한 방어가 가능함 Path 세부 경로 라우팅 기능 Default Path = '/' 설정된 Path가 만족하는 경우, 하위의 경로가 존재해도 쿠키 전송이 가능함 MaxAge & Expires MaxAge : second 설정 == Session 쿠키 Expires : date 설정 == Persistent 쿠키 Secure https 프로토콜만 쿠키 전송 허용 Http..

image