목록Devops Bootcamp (31)
Fairy ' s

TCP/IP 4 계층 이론보다는 실용성에 중점을 둔 프로토콜이며, 현대의 네트워크는 대부분 기술 발전을 거쳐, 합리적이고 성능이 우수한 TCP/IP 프로토콜과 이더넷으로 이루어져 있다. 물리적 계층에 가까운 부분이 하위 계층, 개발자가 직접 접하게 되는 애플리케이션에 가까운 부분을 상위 계층 이라고 한다. OSI 7 계층 물리 계층 : 물리적인 연결 정보와 전기 신호를 전달하는 데 초점을 두고, 들어온 전기 신호를 그대로 잘 전달하는 것이 목표이다. 데이터 링크 계층 : 물리 계층에 들어온 전기 신호를 모아서, 알아볼 수 있는 데이터 형태로 처리 한다. 주소 정보를 처리하고 출발지와 도착지 주소를 확인한 후 데이터 처리를 수행한다. 네트워크 계층 : 논리적인 주소(IP 주소)를 정의한다. 라우터를 통해 ..

Start 먼저 요구사항에 맞는 ERD 제작과 API 문서 작성으로 시작되었다. 요구사항 [✔] 사용자는 모든 상품을 조회할 수 있다. [✔] 사용자는 특정 분류의 상품을 조회할 수 있다. (상품분류, 브랜드명, 가격, 상품명) [✔] 사용자의 타입이 판매자인 경우 자신의 상품을 등록할 수 있다. [✔] 사용자는 상품을 장바구니에 담을 수 있다. [✔] 사용자는 자신의 장바구니를 조회할 수 있다. [✔] 사용자는 자신의 장바구니에 있는 상품의 수량을 변경시킬 수 있다. [✔] 사용자는 상품을 자신의 장바구니에서 제외할 수 있다. TABLE 필요한 테이블은 users, items, cart 세 가지 테이블입니다. users 테이블은 프라이머리 키로 지정한 고유한 user_id 그리고 username과 유저..

1. nginx 로그 분석 (sample.log) 10.0.210.17 - - [28/Nov/2022:11:33:28 +0900] "GET /hello HTTP/1.1" 200 615 "-" "curl/7.84.0" "-" IP 주소 : 요청하는 클라이언트의 주소이다. - : 클라이언트의 신원 - : 클라이언트와 연결된 사용자 ID 날짜 : 요청이 이루어진 날짜 "GET /hello HTTP/1.1" : 사용된 HTTP 메서드, 요청된 URL 및 사용된 HTTP 버전 200 : 요청이 성공했다는 의미 "-" : 알 수 없는 리퍼러 "curl/7.84.0" : 요청에 사용된 소프트웨어를 식별하는 사용자 에이전트 문자열 "-" : 알 수 없는 응답의 내용 유형 $ cat sample.log | ./parse..

데이터 파이프라인 OLTP & OLAP 정형 데이터 & 비정형 데이터 ETL & ELT MLOps OLTP CRUD 작업과 같은 트랜잭션에 포커스가 맞추어져 있는 데이터베이스 여러 테이블을 함께 묶어 조회하려면 복잡도가 늘어나며 트랜잭션 성능에 지장을 줄 수 있다. 테이블 간 관계, 데이터의 무결성, 정규화 여부가 중요하다. 정형적이며, 정규화된 데이터이다. OLAP 데이터 기반의 의사결정을 위한 도구 / 적재된 데이터를 다양한 방법으로 분석하는 데 포커스가 맞추어져 있다. 다양한 데이터 소스로부터 수집되는 데이터를 통합한다. 빠른 분석과, 다차원 정보 제공이 중요하다. 정형 및 비정형 데이터이다. 정형 데이터 정해진 규칙에 따라 구조화된 데이터 해당 컬럼에 들어갈 값이 예측 가능하고 의미 파악이 쉽다...

Q 1. RDBMS에서 스키마 디자인 중 필드값으로 배열을 넣어야 하는 경우가 발생했습니다. 선배 개발자에게 물어보니, 이 경우에는 정규화가 필요하다고 조언해줍니다. 다음은 사용자 정보가 담긴 user 테이블입니다. 사례를 통해 어떻게 테이블을 정규화할 지 고민해보세요. ID Name Age E-mail Hobby 1 김코딩 19 kimcoding@aaa.com 코딩 2 박해커 28 hackerpark@bbb.com 해킹 3 최고수 18 choigosu@ccc.com [코딩, 해킹]

데이터베이스 관계형 데이터베이스 비관계형 데이터베이스 레플리카 데이터베이스 데이터를 저장하고, 요청 시 해당 데이터를 찾아서 제공한다. 데이터베이스 검색 성능이 낮을 때, 좀 더 효율적이게 특정 키의 값을 확인하고 제공하기 위해 인덱스를 이용한다. 인덱스를 사용하지 않으면 요청받은 데이터를 찾기 위해 전체 데이터 베이스를 스캔해야하는 문제가 발생한다. 특정 기준으로 인덱싱 되어 있다면, 인덱싱 후 검색 시 효율성이 증가한다. 인덱스 - 데이터베이스에 저장된 기본데이터에서 파생된 부가적인 메타데이터 (복사본) - 원하는 데이터의 위치를 찾는데 도움을 주는 이정표 역할 (ex. 목차) - 인덱스의 추가 삭제는 허용되지만, 데이터베이스의 내용에는 영향을 주지 않고, 쿼리 성능에만 영향을 준다. - 쿼리 성능이..

서버 ? 하드웨어적 : 정적인 파일들이 제공되고, 서버 애플리케이션이 실행되는 컴퓨터. 소프트웨어적 : 정적인 파일이나 서비스를 제공하는 애플리케이션 그 자체 즉, 서버는 사용자의 요청을 받고 이에 따른 응답과 데이터를 보내준다. 서비스를 제공하는 컴퓨터 내의 프로그램(프로그램)이며, 프로그램 실행되는 컴퓨터(하드웨어)도 서버이다. 웹 서버 - 클라이언트로부터 HTTP 요청을 받아들이고, 웹 페이지를 그대로 반환하는 서버 - 웹 페이지 : 그림, CSS, JS 등 정적 파일 - 정적 파일들을 브라우저에 그대로 전달하기 때문에 정적 웹 서버 라고 부르기도 한다. - ex. nginx, Apache Web Server 등 웹 애플리케이션 서버 (WAS) - 웹 페이지를 전달하는 역할을 하기도 하지만, 핵심 ..

HTTPS HTTP에 Secure을 더한 보안이 강화된 HTTP 비대칭 키 암호화 - ex. 암호화한 키 A는 한 쌍인 다른 키 B로만 복호화 가능 - 서버는 한 쌍의 키인 A와 B중에 하나는 숨겨두고 다른 하나는 클라이언트에 공개하여 데이터를 안전하게 전송 1. Hand Shake : 서로를 확인하고 서버는 공개키와 인증서 정보를 클라이언트에 전송 2. 비밀 키 생성 : 클라이언트와 서버는 서로 만들고 교환한 임의의 정보를 바탕으로 비밀 키를 생성 각자 생성한 키를 바탕으로 클라이언트가 테스트용 데이터를 만들어낸 비밀키로 암호화해서 전달 3. 상호 키 검증 : 서버 역시 만들어진 비밀키로 복호화를 하고 다시 암호화를 해서 클라이언트로 전달 클라이언트가 같은 내용의 데이터를 복호화하는데에 성공했다면, 성..