본문 바로가기

server

(43)
[25 Computer Papers] 4. Cassandra - A Decentralized Structured Storage System https://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf  1 introductionCassandra는 확장성과 가용성을 달성하기 위해 잘 알려진 기술을 종합적으로 사용합니다. Cassandra는 페이스북의 편지함 검색 기능의 스토리지 요구 사항을 충족하도록 설계되었습니다.-매우 높은 쓰기 처리량, 하루 수십억 건의 쓰기 작업-사용자 수에 따른 확장성  2 Related Work성능, 가용성, 내구성을 위한 데이터 분산은 파일 시스템과 데이터베이스 커뮤니티에서 널리 연구되어 왔습니다. Cassandra에 영향을 준 기존 시스템에 대해 이야기해 보겠습니다.-Ficus와 Coda는 일관성을 희생하는 대신 고가용성을 위해 파일을 복..
레디스 트러블 슈팅 메모리 문제레디스 명령어 중 메모리 사용량을 확인 할수 있는 memory 명령어가 있다. 기존에도 info 명령어로 확인할수 있지만, memroy 명령어를 통해 더 자세히 확인 할수 있다.https://redis.io/docs/latest/commands/memory-usage/https://redis.io/docs/latest/commands/memory-stats/  127.0.0.1:6379> meory help(error) ERR unknown command 'meory', with args beginning with: 'help'127.0.0.1:6379> memory help 1) MEMORY [ [value] [opt] ...]. Subcommands are: 2) DOCTOR 3) ..
[25 Computer Papers] 3. Bigtable: A Distributed Storage System for Structured Data https://storage.googleapis.com/gweb-research2023-media/pubtools/4443.pdf   IntroductionBigtable은 대규모(페타바이트 단위) 구조화된 데이터를 관리하기 위한 분산형 스토리지 시스템입니다.웹 인덱싱, Google 어스, Google 파이낸스 등 Google의 많은 프로젝트에서 Bigtable에 데이터를 저장하고 있습니다. Bigtable은 광범위한 적용성, 확장성, 고성능, 고가용성 등 여러 가지 목표를 달성했습니다.여러 면에서 Bigtable은 데이터베이스와 유사하지만 완전한 관계형 데이터 모델을 지원하지는 않습니다. 클라이언트에 데이터 레이아웃과 형식에 대한 동적 제어를 지원하는 간단한 데이터 모델을 제공합니다.빅테이블 스키마 매..
[25 Computer Papers] 2. Dynamo: Amazon’s Highly Available key-value Store https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf  요약key-value 스토어가 필요해서 그냥 구현함 (조인 같은 기능이 필요없었음)시스템은 분산되어야 하며 하드웨어에 제약을 받지 않으면서 영속성은 필요했음해시링에 구현 전략 설명서동시 업데이트시 데이터 충돌을 피하기 위해 낙관적락으로 구현  ABSTRACTAmazon의 핵심 서비스 중 일부가 '상시 가동'을 제공하기 위해 사용하는 고가용성 키-값 스토리지 시스템인 Dynamo의 설계와 구현에 대해 설명한다. 이러한 수준의 가용성을 달성하기 위해 Dynamo는 특정 장애 시나리오에서 일관성을 희생한다.  1 introuductionAmazon은 전 세계 여러 데이터 센터에 위치한..
[25 Computer Papers] 1. The Google File System https://static.googleusercontent.com/media/research.google.com/ko//archive/gfs-sosp2003.pdf요약GFS는 엄청나게 많은 데이터를 보유해야 하는 구글의 핵심 데이터 스토리지와 구글 검색 엔진을 위해 최적화.파일들은 64MB로 고정된 청크로 데이터가 추가되거나 읽기 위주의 작업이며, 데이터 유실에 대한 설계를 중심으로 레이턴시가 길더라도 높은 스루풋에 중점을 두었다.  1. Introduction첫째, 파일 시스템은 저렴한 비용으로 구축된 수백, 수천 대의 스토리지 머신으로 구성되며 비슷한 수의 클라이언트 머신에서 액세스 된다. 일부 구성 요소는 언제든 작동하지 않을 수 있고, 일부는 현재 장애가 발생해도 복구되지 않을 수 있어 지속적인 ..
docker 빌드 실패한 이미지 지우기 (많이!) 어... 빌드 실패 이미지가 이렇게나 쌓여있었다..하나하나 삭제하려 하니 귀찬아서 전체 삭제가 가능한지 찾아보았다 다음 명령어로 none으로 되어 있는 image id만 출력된다.$ docker images -f "dangling=true" -q   $ docker rmi $(docker images -f "dangling=true" -q)  끝
[k8s] nginx pod * 200개를 띄울수 있나요? k8s (minikube) 에서 과연 몇개의 pod까지 띄울수 있을까?나는 순진하게 무한대라고 생각했다. 정확히는 서버의 자원이 허락하는한 무한히 띄울수 있다고 생각했다.일단 테스트 시작 apiVersion: apps/v1kind: Deploymentmetadata: name: smallest-web-serverspec: replicas: 2 # 두 개의 Pod를 생성합니다. selector: matchLabels: app: web-server template: metadata: labels: app: web-server spec: containers: - name: web-server image: nginx:alpin..
rabbitmq 심화 (persistent / cluster) rabbitmq persistentdelivery_mode는 RabbitMQ에서 메시지의 배달 모드를 지정하는 데 사용되는 옵션. 이 옵션은 메시지를 메모리에만 저장할지 아니면 디스크에 영구적으로 저장할지를 결정Transient메시지를 메모리에만 저장. RabbitMQ가 종료되면 메모리에 있는 메시지는 모두 삭제됨메시지는 RabbitMQ 서버의 메모리에서만 보관되므로 메모리가 부족한 경우 메시지 손실이 발생할 수 있음메시지를 가장 빠르게 처리하고자 할 때 사용Persistent메시지를 디스크에 저장. RabbitMQ가 종료되어도 메시지는 디스크에 보존됨.메시지를 디스크에 영구적으로 저장하여 메시지 손실을 방지할 수 있으며 재부팅 후에도 메시지가 유지되므로 안정성을 높일 수 있다.메시지의 지속성이 중요하고..