목록Infra (9)
yoongrammer
목차 캐시(Cache) 란? 캐시(Cache)는 자주 사용하는 데이터나 값을 미리 복사해 놓는 임시 저장소입니다. 속도 향상을 위해 캐시를 사용하며, 다음과 같은 상황에서 캐시를 주로 사용합니다. 원본 데이터보다 빠르게 접근 가능할 때 같은 데이터에 반복적으로 접근할 때 변하지 않은 데이터를 주로 사용할 때 레디스(Redis)는 단순한 구조와 in-memory저장소로 인한 빠른 성능 때문에 캐시에 주로 쓰입니다. 캐싱 전략(Caching Strategies) 캐시로 사용할 때 어떻게 배치하는지가 시스템 성능에 큰 영향을 끼치는데 이를 캐싱 전략(Caching Strtegies)이라고 합니다. Look-Aside Look-Aside는 데이터를 찾을 때 우선 캐시에서 데이터를 찾고 데이터가 있다면 캐시에서..
목차 YugabyteDB 설치하기 OS별 YugabyteDB 설치 방법에 대해 알아보도록 하겠습니다. macOS 요구사항 macOS 10.12 이상이어야 합니다. Python 2 or 3이 설치되어 있어야 합니다. YugabyteDB 다운로드 1. 다음 명령어를 수행하여 YugabyteDB를 다운로드합니다. $ wget https://downloads.yugabyte.com/yugabyte-2.5.1.0-darwin.tar.gz 2. tar파일의 압축을 풀고 YugabytyeDB 디렉터리로 이동합니다. $ tar xvfz yugabyte-2.5.1.0-darwin.tar.gz && cd yugabyte-2.5.1.0/ 3. 설치가 완료되었는지 확인해 봅니다. $ ./bin/yugabyted version..
목차 YugabyteDB 알아보기 YugabyteDB는 고성능 클라우드 네이티브 분산 SQL 데이터베이스입니다. 특징 YugabyteDB 특징은 다음과 같습니다. 강력한 RDBMS 기능 제공 PostgreSQL과 호환됩니다. High Performance 낮은 대기시간과 높은 처리량을 보여줍니다. (C, C++ 언어로 만들어짐) Strong consistency ACID transaction 지원으로 강한 일관성을 보장합니다. Continuous availability 지속적인 가용성을 위해 raft 분산 합의 프로토콜 기반 이중화를 사용합니다. Horizontal scalability 수평 확장이 간단합니다. Multi-cloud 다중 클라우드 배포가 가능합니다. AWS, GCP, Azure, Pivo..
목차 Docker 사용하기 Docker 명령은 docker run, docker push와 같이 docker 형식이며, 항상 root 권한으로 실행해야 합니다. docker 명령은 root 권한으로 실행해야 하기 때문에 일반 계정에서는 항상 sudo를 사용해하지만 번거롭다면 sudo를 입력하지 않는 방법이 두 가지가 있습니다. 1. 처음부터 root 계정으로 로그인하거나 sudo su 명령을 사용하여 root 계정으로 전환합니다. $ sudo su # 2. 현재 계정을 docker 그룹에 포함시킵니다. $ sudo usermod -aG docker ${USER} $ sudo service docker restart 현재 계정에서 로그아웃한 뒤 다시 로그인 한다. 만약 usermod group 'docke..
목차 Docker 설치하기 OS별 Docker 설치방법에 대해 알아보도록 하겠습니다. MacOS 요구사항 Mac하드웨어는 Hypervisor 프래임워크를 지원하는 Intel 프로세서가 장착된 최신 모델이어야 합니다. 아래 명령으로 확인이 가능합니다. // hv기능이 지원되면 1 로 출력됩니다. $ sysctl kern.hv_support kern.hv_support: 1 macOS는 버전 10.14 이상이어야 합니다. 최소 4GB RAM이 필요합니다. 버전 4.3.30 이전의 VirtualBox는 Docker Desktop과 호환되지 않으므로 설치하면 안 됩니다. 설치방법 1. 아래 링크로 접속 후 Get Docker를 클릭하여 Docker를 다운로드합니다. https://hub.docker.com/ed..
목차 Docker 알아보기 Docker는 컨테이너 기반의 오픈소스 가상화 플랫폼입니다. Docker는 go 언어로 작성되었으며 다음과 같은 Linux 커널의 기능을 활용해 만들어졌습니다. namespaces cgroups Union file systems docker는 OS를 가상화하는 방식이 아닌 프로세스를 격리하는 방식(Container)을 사용해 가상화보다 더 가볍고 빠릅니다. 가상화 머신(Virtual Machine) OS를 설치한 가상머신 이미지를 만들어 배포를 편하게 합니다. OS를 설치해야 하기 때문에 무겁고 성능이 좋지 못한 것이 단점입니다. 전가상화(Full Virtualization)의 느린 속도를 개선하기 위해 반가상화(Paravirtualization)방식이 개발되었지만 OS를 설치..
관련 글 2020/10/25 - [DB] - CockroachDB 란 2020/11/01 - [DB] - CockroachDB 설치 목차 CockroachDB 사용방법 노드 3개를 가지고 있는 클러스터를 만들어 보겠습니다. 1. 클러스터 시작 1. cockroach start 명령을 사용하여 첫 번째 노드를 생성합니다. $ cockroach start \ --insecure \ --store=node1 \ --listen-addr=localhost:26257 \ --http-addr=localhost:8080 \ --join=localhost:26257,localhost:26258,localhost:26259 \ --background 다음과 같은 메시지가 표시됩니다. * * WARNING: RUNNIN..
관련 글 2020/10/25 - [DB] - CockroachDB 란 2020/11/02 - [DB] - CockroachDB 사용방법 목차 CockroachDB 설치 OS별 CockroachDB 설치 방법에 대해서 알아보도록 하겠습니다. macOS 1. Homebrew를 설치합니다. $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 위의 내용을 macOS 터미널에 붙여 넣습니다. 2. Homebrew를 사용하여 CockroachDB를 설치합니다. $ brew install cockroachdb/tap/cockroach 3. 설치가 되었는지 확인해 봅니다. $ cockroach..
목차 CockroachDB 란? CockroachDB는 최신 클라우드 애플리케이션을 위해 설계된 분산 데이터베이스입니다. Cockroach는 바퀴벌레라는 뜻이다. 왜 이런 이름으로 지었을까? 바퀴벌레처럼 강한 생존력을 가졌다는 것을 어필하기 위해서입니다. CockroachDB의 기본 설계 목표는 바퀴벌레처럼 강한 생존력과 일관성입니다. 특징 CockroachDB의 특징은 아래와 같습니다. NewSQL(NoSQL+RDB) 사용 KV(keys-value) store (NoSQL) PostgreSQL 문법과 호환됨 (RDB) ACID transaction 지원 (RDB) horizontal scalability KV store를 사용하고 있기 때문에 수평 확장이 용이합니다. strong consistency ..