2019. 3. 4. 21:16ㆍ[정리] 기능별 개념 정리
오픈소스 기술셋
상황 |
비고 |
|
스토리지
|
NoSQL (key, value) column family (key,value)에서 value가 (column, value)의 조합 해쉬 구조기 때문에 order by 가 존재 하지 않음 대신 order by key/value store가 존재
|
|
Cassandra | 분산형 DB, NoSQL | |
Elastic search | 해쉬 테이블 방식의 O(1) 행 : Document 열 : Filed 스키마 : Mapping | |
인메모리 DB
|
메인 메모리에 설치되어 운영되는 DBMS 메모리에 데이터가 상주하기 때문에 디스크 접근 과정이 없어서 빠르다. 더 높은 예측 가능성 성능을 제공한다. 하지만 메모리에 상주한다 = 휘발성 데이터다. 라는 뜻이다. 따라서 전원이 차단될 경우 데이터 손실이 발생한다. 이를 보완하기 위해 Redis 서버 같은 경우 비휘발성 RAM을 사용하기도한다. |
|
Redis | 인메모리 DB의 일종 NoSQL이기도함 key-value 데이터 관리 | |
메시지 브로커
|
프로세스가 메세지 교환 하는 방법 송신자-브로커-수신자 메시지 지향의 미들웨어 송신자가 브로커에 메시지를 넣어두면 수신자가 브로커로부터 메시지를 가져오는 방식 클라이언트의 메시지 처리를 동기 방식으로 처리하면 병목현상이 생긴다. 클라이언트의 병목 현상은 서버의 성능 저하로 이어진다. 메시지 브로커는 Message Queuing 시스템으로 이런 현상을 막기 위해 개발되었다. 하지만 전통적인 RPC를 대체하지는 않는다. |
|
RabbitMQ | 비동기 데이터 처리, (채팅), 배치 작업 | |
Kafka | 대용량 실시간 로그 처리에 특화 된 메시지 시스템 | |
시각화
|
Grafana
| elastic search 등의 대시보드 작성을 위한 솔루션 |
Kibana | elastic search 시각화 | |
배포툴 |
Ansible | 파이썬으로 구현된 IT 자동화도구 테스트 환경을 구축하는데 사용되는 툴 inverntory : 어디서 앤서블을 실행하는가, 원격 서버의 메타데이터 기술 module : 무엇을 앤서블에서 실행하는가 playbook : 어떻게 앤서블을 실행하는가, 간단한 설정 관리, 배포 시스템 단위 task : Ansible 모듈 호출 ad-hoc : 임시적으로 수행 |
AWX | Ansible 프로젝트 관리를 위한 소프트웨어관계 데이터 수집 | |
분산 로그 추적 | Zipkin |
하나의 리퀘스트가 시작해서 나가기까지 파이프 라인이 있다. 이 파이프 라인에는 중간 중간 어떤 레이어들을 거쳐 수행될 것이다. 전체 파이프라인을 모니터링 한다고 생각해보자. 각각의 레이어들이 언어나 플랫폼이 다를 경우 문제가 생긴다. 언어, 플랫폼에 구애 받지않고 전체를 모니터링 가능하도록 하게하고 싶다. 이를 오픈 트레이싱 이라고 한다. 대표적인 오픈 트레이싱 = Zipkin Trace : 어떤 트랜잭션 Span : 어떤 트랜잭션의 depth |
오픈소스 관련 조대협님 티스토리
Zipkin https://bcho.tistory.com/1244?category=502863
카산드라 https://bcho.tistory.com/440?category=431286
NoSQL https://bcho.tistory.com/665
Ansible + AWX 는 Docker + Kubernetes와 뭐가 다를까?
= Ansible + AWX 는 서버 가상화를 상정하지 않는다.
= 딱 그 서버에 설치된 OS를 쓴다.
'[정리] 기능별 개념 정리' 카테고리의 다른 글
Vault (0) | 2020.02.24 |
---|