본문 바로가기
728x90

학부20

Database Clustering 1. Clustering개념 단일 데이터베이스 서버가 아닌 다중 데이터베이스 서버를 구성하는 것 단일 DB서버에 장애가 발생하여 서비스가 불가능 한 것을 방지하는 DB 분산 기법 중의 하나 2. Clustsering 장단점 A. 장점 고가용성(Transactional) 데이터베이스의 충돌 또는 장애가 발생했을 때 빠른 시간 안아 데이터베이스가 복구돼야 한다. 가용성이란 것은 데이터베이스가 실행되고 있는 시간과 중지되어 있는 시간의 비율을 의미하며 클러스터링으로 데이터베이스의 서버를 분산하여 구성했을 때 이 비율이 그렇지 않은 경우보다 비교적 높게 측정된다. 데이터베이스 서버가 장애를 일으켜 서비스가 불가능해진 경우에 빠른 시간 안에 서버를 복구해야 하는데 단일 서버로 구성이 되어 있는 경우에는 미리 백업.. 2021. 2. 6.
폴링(Polling) / 인터럽트(Interrupt) / DMA(Direct Memory Access) /* 본 내용은 학교 수업내용을 바탕으로 하고 OSTEP(Operating Systems: Three Easy Pieces) 교재를 참고하여 정리한 내용입니다. */ 폴링과 인터럽트를 보기 전 간단하게 컴퓨터구조와 하드웨어의 구성을 보고 진행하도록 하겠다. CPU와 메인메모리가 메모리버스에 연결되어 있다. 그래픽이나 다른 고성능 I/O장치들은 범용I/O버스에 연결될 수 있다.(ex. PCI) 그 아래에는 SCSI. SATS, USB와 같은 주변장치용 I/O버스가 있다. 이 주변장치버스를 통해 디스크, 키보드, 마우스와 같은 가장 느린 하드웨어 장치들이 연결된다. 이러한 구조를 유지하는 이유는 비용때문이다. 버스가 고속화되려면 더 짧아져야 하는데 고속의 메모리버스는 여러 장치들을 수용할 공간도 없고 이 버.. 2019. 12. 15.
병행성(1) - 락(LOCK) /* 본 내용은 학교 수업내용을 바탕으로 하고 OSTEP(Operating Systems: Three Easy Pieces) 교재를 참고하여 정리한 내용입니다. */ 프로세스는 디스크에 저장되어 있던 프로그램이 메인메모리에 올라와 CPU를 할당받기를 대기하고 있거나 이미 CPU를 할당받아 실행중인 프로그램을 의미한다. 쓰레드는 프로세스내에서 일련의 명령어를 실행하는 흐름의 단위를 의미한다. 각각의 프로세스들은 서로 다른 메모리 공간(코드, 데이터, 힙, 스택)을 할당받아 실행되지만 쓰레드는 프로세스 내부에서 스택영역을 제외한 나머지 메모리 영역을 공유하게 된다. 락(LOCK)을 공부하기 전에 그와 관련된 개념들을 우선 알아야 한다. 프로세스 내에는 여러 쓰레드가 존재할 수 있다. 이 때 각각의 쓰레드들은.. 2019. 12. 14.
멀티레벨페이지테이블(Multi-level Page Table) /* 본 내용은 학교 수업내용을 바탕으로 하고 OSTEP(Operating Systems: Three Easy Pieces) 교재를 참고하여 정리한 내용입니다. */ CISC(Complex Instruction Set Computing)체계에서는 하드웨어가 TLB미스를 처리하도록 설계하였고 RISC(Reduced Instruction Set Computing)체게에서는 TLB미스를 소프트웨어가 처리하도록 설계했다. 프로세스마다 별도의 테이블페이지를 가지고 있다. 그렇기 때문에 TLB를 사용하게 되면 프로세스 간 Context Switching이 발생할 시에 기존에 있던 TLB의 내용들을 모두 비우고 새로운 TLB내용을 저장해야하는데 이때 큰 성능저하를 가져올 수 있다. 그리고 페이징의 두 번째 문제점은 .. 2019. 12. 13.
728x90
반응형

`