CS 스터디 17

[CS 정리] 프레임워크, 라이브러리, API 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 프레임워크? 개발할 때에 번번히 쓰여지는 범용 기능을 한꺼번에 제공해 개발 효율을 향상을 목표하는 소프트웨어 환경 프레임워크의 특징 공통적인 개발환경을 제공합니다. 개발할 수 있는 범위가 정해져 있습니다. 제어의 역전이 발생합니다. 프레임워크의 대표적인 예 자바의 스프링 파이썬의 장고 자바스크립트 기반의 노드JS 라이브러리? 라이브러리는 개발자가 사용할 수 있는 API들을 종류나 목적에 따라서 나누어 정의한 API 묶음 입니다. 라이브러리는 시스템에 기본적으로 설치되어 있는 기본 라이브러리와 제조사나 외부 메이커에 의해서 만들어지는 확장 라이브러리로 나뉩니다. 라이브러리 → 재사용 가능한 코..

[CS 정리] OSI 7 Layer

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. OSI 7 Layer 물데네전세표응 물리, 데이터 링크, 네트워크, 전송, 세션, 표현, 응용 계층... 물리 계층(Physical Layer) 0과 1의 나열을 아날로그 신호로 바꾸어 전선으로 흘려 보내고, 아날로그 신호가 들어오면 0과 1의 나열로 해석하여 물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고받을 수 있게 해주는 모듈 두 대의 컴퓨터가 통신하려면? 모든 파일과 프로그램은 0 과 1의 나열입니다. 즉, 0과 1만 주고받을 수 있습니다. 1을 보낼 때는 + 5V의 전기를 전선으로 흘려 보내고 0을 보낼 때는 - 5V의 전기를 전선으로 흘려 보내면 0과 1의 전송이 가능할..

[CS 정리] 교착상태(Deadlock)

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 교착상태 (Deadlock) 상호 배제에 의해 나타나는 문제점으로, 둘 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상을 의미합니다. 교착 상태 4가지 필요 조건 1. 상호 배제 조건 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 합니다. 2. 점유와 대기 조건 최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야 합니다. 3. 비선점 조건 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 합니다. 4. 순..

[CS 정리]캐시 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 메모리 계층 구조 데이터를 저장하는 공간의 속도와 용량은 반비례 관계 속도가 빠른 메모리 일수록 용량이 작음 용량이 큰 저장장치는 속도가 느림 둘 다 잡기에는 비용이 많이 듬 그래서 데이터 저장 공간은 속도와 용량에 따라 특성에 맞게 역활을 나누어서 사용합니다. 데이터 저장 공간을 속도 - 용량 순서도래 쌓으면 마치 피라미드와 같은 형상이 나타납니다. 파레토의 법칙 원인 중 상위 20%가 전체 결과의 80%를 만든다는 법칙입니다. 2대 8 법칙이라고도 합니다. 데이터 지역성의 원리 자주 쓰이는 데이터는 시간적 혹은 공간적으로 한 곳에 몰려 있을 가능성이 높습니다. 시간 지역성 공간 지역성 캐..

네트워크 프록시(Proxy) & 로드 밸런서(Load Balancer)

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. Proxy 대리! 남을 대신하여 일을 처리함 Proxy Server 대신 처리하는 서버 클라이언트와 서버간의 중계 서버로, 통신을 대리 수행하는 서버 캐시/ 보안/ 트래픽 분산 등등 여러 장점을 가지고 있습니다. Proxy와 인터넷을 합쳐둔 상태 Forward Proxy 일반적으로 말하는 Proxy Proxy 서버를 설정 인터넷 속도를 향상시키기 위해 Proxy 설정 외국에서 접속하는 것처럼 테스트하기 위해 Proxy 설정 개인정보를 빼돌린 해커의 IP 추적을 방지하기 위해 Proxy 설정 특징 1. 캐싱 클라이언트가 요청한 내용을 캐싱 클라이언트가 어떠한 정보에 대해서 요청을 했을 때, 가..

[CS 정리]Web Server vs WAS

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 웹 서버(Web Server) 클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠를 제공하는 서버 Web 인터넷을 기반으로 한, 정보를 공유, 검색할 수 있게 하는 서비스 URL(주소), HTTP(통신 규칙), HTML(내용) Server 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템 Web Server 인터넷을 기반으로 클라이언트에게 웹 서비스를 제공하는 컴퓨터 웹서버에게 주소를 가지고 통신규칙에 맞게 요청하면 알맞은 내용을 응답 받습니다 클라이언트의 요청을 기다리고, 웹 요청에 대한 데이터를 만들어서 응답을 해줍니다. 이때 데이터는 웹에서 처리할 수 있..

[Spring] Spring Aop 란?

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크 를 참고하시면 됩니다. 비지니스 로직 일반적으로 데이터베이스와 사용자 인터페이스 사이의 정보 교환을 처리하는 알고리즘을 설명하는 데 사용하는 비기술적 용어입니다. 업무에 필요한 데이터처리를 수행하는 응용 프로그램의 일부를 말합니다. 하나의 프로젝트나 프로그램 중 업무와 관련된 처리를 하는 일부분을 뜻합니다. 부가 기능 시간을 잰다든지, 트랜잭션을 거는 등등 서비스 로직 외의 기능을 인프로 로직이라고 부릅니다. 인프라 로직의 특징 애플리케이션의 전 영역에서 나타날 수 있음 중복코드를 만들어낼 가능성 때문에 유지보수가 힘들어짐 비지니스 로직과 함께 있으면 비지니스 로직을 이해하기 어려워짐 횡단 관심사 AOP (Asp..

[Network] 11. TCP 프로토콜 추가 정리

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. TCP를 이용한 통신과정 연결 수립 과정 TCP를 이용한 데이터 통신을 할 때 프로세스와 프로세스를 연결하기 위해 가장 먼저 수행되는 과정입니다. 1. 클라이언트가 서버에게 요청 패킷을 보내고 2. 서버가 클라이언트의 요청을 받아들이는 패킷을 보내고 3. 클라이언트는 이를 최종적으로 수락하는 패킷을 보내줍니다. 위 3개의 과정을 3Way Handshake라고 부릅니다. 3Way Handshake 데이터 송수신 과정 TCP를 이용한 데이터 통신을 할 때 단순히 TCP 패킷만을 캡슐화해서 통신하는 것이 아닌 페이로드를 포함한 패킷을 주고 받을 때의 일정한 규칙을 가지게 됩니다. 1. 보낸 쪽에서 ..

[Network] 10. UDP 프로토콜 & TCP 프로토콜

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. UDP 프로토콜 사용자 데이터그램 프로토콜은 유니버셜 데이터그램 프로토콜이라고 하기도 합니다. UDP의 전송 방식은 너무 단순해서 서비스의 신뢰성이 낮고, 데이터 그램 도착 순서가 바뀌거나, 중복되거나, 심지어는 통보 없이 누락시키기도 합니다. UDP는 일반적으로 오류의 검사와 수정이 필요 없는 프로그램에서 수행할 것으로 가정이 됩니다. UDP 프로토콜의 구조 UDP프로토콜을 사용하는 대표적인 프로그램 DNS 서버 도메인을 물으면 IP 주소를 알려줍니다. tftp 서버 UDP로 파일을 공유합니다. RIP 프로토콜 라우팅 정보를 공유합니다 TCP 프로토콜 전송 제어 프로토콜 (TCP)은 인터넷에..

[Network] 8. 조각화 이론

네트워크 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 네트워크 기초를 참고하시면 됩니다. 조각화란? 큰 IP 패킷들이 적은 MTU를 갖는 링크를 통하여 전송되려면 여러 개의 작은 패킷으로 쪼개어 / 조각화 되어 전송돼야 합니다. 즉, 목적지까지 패킷을 전달하는 과정에 통과하는 각 라우터마다 전송에 적합한 프레임으로 변환이 필요합니다. 일단 조각화되면, 최종 목적지에 도달할 때까지 재조립되지 않는 것이 일반적입니다. IPv4에서는 발신지뿐만 아니라 중간 라우터에서도 IP 조각화가 가능합니다. IPv6에서는 IP 단편화가 발신지에서만 가능합니다. 재조립은 항상 최종 수신지에서만 가능합니다. 조각화 과정 MTU 가 3300 bytes IPv4 헤더 20 bytes 나머지 3280 byt..