본문 바로가기

전체 글134

DevOps Day 17 (3.29) 데이터베이스_문제 상황에 따른 해결책 문제 상황에 따른 해결책 낮은 검색 성능 – 인덱싱 첫번째는 데이터를 저장하는 것이고, 두번째는 요청에 왔을 때 저장되어있는 데이터 중에 요청에 맞는 데이터를 찾아서 제공하는 것입니다. 데이터베이스 기능의 두번째 경우에서, 낮은 검색 성능이 나타날 때, 좀 더 효율적인 방법으로 특정 키의 값을 확인하고 제공하기 위해서 인덱스(색인)를 이용합니다. 데이터 검색에 도움을 주기 위한 메타데이터 인덱스는 데이터베이스에 저장된 기본데이터(primary data)에서 파생된 부가적인 메타데이터(meta-data : 데이터에 관한 구조화된 데이터)입니다. 데이터에 영향을 주지 않는 인덱스 인덱스 추가 및 삭제가 가능하며 인덱스 편집사항은 데이터베이스의 내용에는 영향을 주지 않습니다. 단지 질의 (Query) 성능에만.. 2023. 3. 31.
DevOps Day 17 (3.29) 데이터베이스_기초 메모리에 임시 저장 (In-Memory) 프로그래밍 언어에서 데이터를 다룰 때에는 프로그램이 실행될 때에만 존재하는 데이터가 있고 프로그램이 종료되면 데이터도 같이 없어집니다. 파일 입/출력 (I/O) 파일을 읽는 방식으로 작동하는 형태를 말합니다 그러나 한계가 존재합니다. - 데이터가 필요할 때마다 전체 파일을 매번 읽어야 합니다. 파일의 크기가 커질수록 이 작업은 버겁고, 비효율적이어서 파일 입출력 방식의 큰 단점입니다. - 파일이 손상되거나 여러 개의 파일들을 동시에 다뤄야 하거나 하는 등 복잡하고 데이터량이 많아질수록 데이터를 불러들이는 작업이 점점 힘들어 집니다. RDBMS vs NoSQL - 데이터베이스는 크게 관계형 데이터베이스와 비관계형 데이터베이스로 구분합니다. 관계형 데이터베이스는 SQ.. 2023. 3. 31.
DevOps Day 16 (3.28) WAS와 Web Server_Cozstory WAS 개발 실습 Cozstory WAS 개발 위해 프론트엔드, 백엔드, 클라우드 등 API를 읽고 이해 및 작성하여 웹페이지를 만듭니다. 1. Github 에서 Repository 내용 Clone 하여 폴더 확인 2. Nmp install 명령로 서버 폴더에 필요한 모듈을 설치 3. Package.json을 참고해, 서버를 어떻게 실행해야 하는지 파악 4. Npm test를 통해 테스트케이를 확인하고 문제점을 찾아 수정 5. CRUD 작업을 위한 코드를 수정 -> create, Read, Update, Delete 6. Create 7. Read 8. update 9. Delete 10. npm test 으로 코드에 문제가 있는지 확인. 11. 상단처럼 이상 없을 경우 npm run dev / npm start를 통해 .. 2023. 3. 28.
DevOps Day 15 (3.27) WAS와 Web Server_서버_CORS Cors – Cross Origin Resource Sharing Cross origin에서 리소스(서버자원)을 요청하여 사용한다. HTTP header based mechanism that allows a server to indicate any origins (domain scheme, or port) other than its own from which a browser should permit loading resources. 모든 도메인(*)을 허용하고 있으며 메소드는 GET, POST, PUT, DELETE, OPTIONS만 허용 합니다. 헤더에는 content-type과 accept만 쓸 수 있고 preflight request는 10초 까지 허용 됩니다. Options 요약 : 서버에서 A.. 2023. 3. 28.
DevOps Day 15 (3.27) Nginx 실습 Nginx Web Server Hands-on nginx 설치 : https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-open-source worker_processes number | auto; nginx 프로세스 실행 가능 수를 정의하는 지시어입니다. 최적의 값으로는 CPU의 코어 수, 데이터를 저장하는 하드 디스크 수, 로드 패턴을 비롯한 여러 요인에 따라 달라집니다. include file | mask include 지시어는 특정 파일을 포함하는 기능을 수행합니다. 지시어가 있는 바로 그 위치에 해당 파일 내용이 삽입 됩니다. 지시어 블록(directive block) 모듈 안에 작성된 지시어들은 블록 안에서만 사용.. 2023. 3. 27.
DevOps Day 14 (3.24) WAS와 Web Server_서버 + 정작 웹사이트와 동적 웹사이트 웹 서버 서버라는 용어는 기본적으로 어떤 컴퓨터의 역할을 의미합니다. 어떤 컴퓨터 한 대가 요청을 이해하고, 이를 처리하여 요청에 맞는 내용을 응답으로 전달(서빙)하는 역할을 한다고 해서 serve + er, 서버라는 명칭을 붙였습니다. 서버는 크게 하드웨어와 소프트웨어, 이렇게 2가지 측면에서 살펴볼 수 있습니다. 먼저 하드웨어적인 부분에서의 서버는 정적 파일들이 제공되거나, 서버 애플리케이션이 실행되는 컴퓨터를 의미합니다. 서버의 종류 웹 서버 (Web server) 웹 서버는 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지를 있는 그대로 반환하는 서버를 말합니다. 그림, CSS, JS 을 포함하며, 이러한 파일들은 정적 파일이라고 합니다. 웹 애플리케이션 서버 (Web .. 2023. 3. 27.