데이터포맷 JSON 순수한 데이터 포맷 -> key-value로만 구성 method 담을 수 없음 장점 서로 다른 시스템간에 객체를 교환하기 좋음(가볍기 때문에) XML 열린태그, 닫힌태그로 이루어진 구조의 데이터 의미 무거움 -> Jav
디자인패턴
디자인패턴
디자인패턴
2023118_TIL 네트워크 node와 link가 서로 연결되어 있고, 리소스(자원)을 공유하는 집합의미 node -> 서버, 라우터, 스위치 등 네트워크 장치 link(Edge) 유선 무선 과 같은 연결 매체(와이파이, LAN) 노드와 노드의 연결 트래픽 특정시점에 흐르는 데이터의 양 트래픽이 많다 = 특정시점에 흐르는 '데이터' 양이 많다 처리...
2023118_TIL TCP/IP 4계층 인터넷 상에서 데이터를 주고받을 때 쓰는 독립적인 프로토콜 주고받을 때 여러 고민들의 집합 Transmission Control Protocol / Internet Protocol 인터넷을 통해 데이터를 보낼 때 주로 TCP와 IP를 이용 애플리케이션 계층 HTTP SMTP SSH FTP -> 웹 서비스, 이메...
2023118_TIL 라우팅 routing -> 네트워크에서 데이터(패킷)을 보낼 때 최적의 경로 선택 과정(라우터가 실행) 네이버지도 목적지까지 가는 것 라우터 네트워크 사이에서데이터를 전달하는 장치(서로 다른 네트워크들에 연결됨) 라우터는 라우팅 테이블을 기반으로 데이터를 다음 목적지로 전달 라우팅 테이블 IP주소를 기반으로 라우터의 위치를 저장한 테...
2023118_TIL MAC주소 IP(Internet Protocol address) -> 논리적 주소(가변적) 따라서 IP기반 통신? -> 사실은 그 밑에 있는 MAC주소를 기반으로 통신~ MAC(Media Access Control Address) -> 네트워크 통신을 위해 존재 네트워크 인터페이스에 할달된 고유 '식별자' NIC(Networ...
2023118_TIL 화면의 과정 이해 대기열 -> 브라우저가 주소입력에 대한 요청을 대기열에 넣음 캐싱 -> 요청된 결과값 저장 후, 다시 요청하면 다시 제공하는 것 브라우저 캐시 -> 브라우저 자체가 사용자가 HTTP를 통해 다운로드하는 모든 문서를 보유하는 것 예시) 다시 접속하면 빠르게 컨텐츠 나오는 것, 쿠키 or 데이터 삭제 요런 것...
2023118_TIL HTTP 1.0 기본적으로 한 연결당 하나의 요청 처리 -> RTT 증가 (3웨이핸드셰이크 계속 오픈) RTT 증가 해결법 이미지 스플리팅 -> 많은 이미지 다운로드 대신, 합쳐있는 이미지 다운 코드 압축 -> 코드 용량 감소 이미지 Base64 인코딩 -> 이미지파일 64진법으로 이루어진 문자열로 인코딩 인코딩 ->...
2023118_TIL 암호화 승인된 사람만 정보를 이해할 수 있도록 데이터를 '스크렘블'한 방법 복호화(역으로 가는 것)할려면 송수신자가 동의한 'key'가 필요 해당 'key'를 만들기 위해 또 다른 키 사용 스크렘블 일정한 패턴으로 암호화 X | 무작위로 암호화 공통 128비트 고급 암호화 표준 -> 10회의 스크렘블 대칭암호화 키를 하나만 사용하...
2023125_TIL 브라우저 렌더링 브라우저는 브라우저엔진등으로 이루어져 있음, 이 중에서 렌더링 엔진이 브라우저 렌더링을 담당 DOM 트리 구축 하나의 html(web 브라우저 뼈대) 페이지는 div, span 등 각각의 요소를 가짐 각 요소는 Node로 설정되어 tree형태로 저장됨 -> DOM 트리 라고 함 예) div > span,...
2023125_TIL 로컬 스토리지의 개념 로컬스토리지는 웹 스토리지 객체로 브라우저 내에 키:벨류 형태로 오리진에 종속되어 저장되는 데이터 -> 오리진이 같은 브라우저 내에서 공유됨 하나의 키(중복X) 데이터는 사용자가 브라우저내에서 수동으로 삭제하지 않는 한 평생 동안 로컬 저장소에 저장되며 만료날짜 없음 사용자가 창이나 탭을 닫아도 만료 X...
2023126_TIL 세션기반인증방식 HTTP -> stateless함 HTTP 요청을 통해 데이터를 주고 받을때 요청이 끝나면 요청한 사용자의 정보 등을 유지 X 이러한 방식으로는 로그인 구현 X -> 매번 이렇게 하면 로그인 너무 귀찮아서 단어 세션 -> 서버와 클라이언트의 연결이 활성화된 상태 세션ID -> 웹 서버 또는 DB에 저...
2023126_TIL 직렬화와 역직렬화 직렬화 -> 외부의 시스템에서도 사용할 수 있도록 바이트(byte) 형태로 데이터를 변환 하는 기술 역직렬화 -> 내부 시스템에서 사용할 수 있게 객체 등의 형태로 변환 언제 사용? 성능 차이를 비교할 때 예시) MongoDB 에서의 aggregate와 mapReduce 성능차이 aggregate ->...
2023126_TIL HTTP 상태코드 1xx(정보) 서버가 요청을 잘 받았으면 해당 프로세스를 계속 이어가며 처리하는 것을 의미 100: 계속 진행 2xx(성공) 서버가 요청을 잘 받았고 이를 기반으로 클라이언트에게 성공적으로 데이터를 보낸 것 200 OK: 요청이 성공 201 Created: 요청이 성공, 그 결과로 새로운 리소스 생...
2023126_TIL REST API API는 소프트웨어와 소프트웨어 사이에서 데이터 전송을 가능하게 하는 프로그램 웹장점을 살린 아키텍쳐 -> Uniform inteface 아키텍쳐를 가짐 Uniform-Interface 자원들이 독립적인 인터페이스를 가져야함 웹페이지를 변경했다고 웹 브라우저를 업데이트하는 일은 없어야 함 HTTP 명...
2023126_TIL 서버과부화 서버가 리소스를 소진ㄴ하여 들어오는 요청을 처이하지 못할 때 발생 서버는 사용자의 웹요청을 처리하지 못해 응답없음 뜸 모니터링을 통한 자원 할당으로 해결 가장 큰 이유는 '자원의 한계점 도달' 서버의 CPU 사용량이 80-90%에 도달하거나 메모리가 부족해 계속해서 스와핑이 발생하면 과부화 상태가 됨 모니터링을 통한 자원...
2023126_TIL 유선LAN IEEE802.3 전이중화(full duplx)통신 양쪽 장치가 동시에 송수신할 수 있는 방식 송신로와 수신로로 나뉘어 데이터르 주고받음 CSMA/CD 데이터를 보낸 이후 충돌이 발생하면, 일정 시간 이후 재전송하는 방식 송수신로가 각각 있는게 아니고 한 경로를 기반으로 하기 때문에 충돌 가능성 있음 유선LA...
프로세스 -> 컴퓨터에서 실행되는 프로그램 스레드 -> 프로세스 내 작업의 흐름 1. 프로세스와 컴파일 과정 프로세스 -> 프로그램으로부터 인스턴스화 프로그램 -> 컴파일러 - 기계어 (번역!) 전처리 소스 코드의 주석 제거 및 헤더 파일을 병합 컴파일러 어셈블리어
RDBMS는 행과 열을 가지는 표 형식 데이터를 저장하는 형태의 데이터베이스를 가리키며 SQL이라는 언어를 써서 조작합니다. MySQL, PostgreSQL, 오라클, SQL server, MSSQL 등이 있습니다.MySQL은 대부분의 운영체제와 호횐되며 현재 가장 많
데이터베이스, 디자인 패턴