전체 글120 [OS] 메모리 구조 운영 체제의 프로그램이 실행되려면 실행되려는 프로그램(코드)이 메모리에 먼저 적재되고, 추가로 프로그램에서 사용할 변수를 할당할 메모리 또한 필요로 한다. 위의 그림을 토대로 운영체제에서 프로그램(한 개 이상의 프로세스로 이루어진 집합체)에 배정하는 메모리 영역은 4가지 영역으로 구분되어 있다. Code 영역 Data 영역 Heap 영역 Stack 영역 Code -> Data -> Heap -> Stack 순으로 Low Memory -> High Memory로 분류된다. Low Memory : logical address가 존재하는 메모리 공간 High Memory : logical address를 갖고 있지 않는 메모리 공간 1. Code 영역 : 메모리에 배정된 Code 영역은 이름 그대로 프로그램의.. 2023. 7. 13. [Redis] Redis-cli 기본 명령어 Redis에 저장되는 데이터 구조에는 다양한 형태를 가지고 있고 그에 따라 명령어도 많이 구분되어 있다. 이는 Redis 공식 Docs에 설명이 세부적으로 나와있고, 정확한 가이드가 나와있다. Docs : https://redis.io/docs/data-types/ 그중에서 가장 많이 사용되는 Strings, Lists, Sets, Sorted Sets와 Hashes의 Redis-cli의 명령어에 대하여 알아볼 것이다. 1. Strings # redis-cli set # Create / Update(Key 존재 시) get # Read del # Delete(String 타입 이외에도 적용 가능) getset # value 값을 가져오고 set값으로 대체 append # value + (ex. key가 .. 2023. 7. 11. [Redis] Redis란 1. Redis란 : Key, Value 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터 베이스 관리 시스템 (DBMS) IMDB : 데이터베이스, 캐시, 메세지 브로커로 사용되며 인메모리 데이터 구조 Single Thread : 명령어를 하나씩 처리하기 때문에 긴 명령어가 들어오면 처리될 때까지 후 순위의 명령어의 대기가 필요 get, set과 같은 단순한 명령어의 경우 초당 10만 개 이상 처리가 가능 2. 활용 사례 : I/O가 많은 데이터 처리 사용자의 세션 관리 API 캐싱 3. Redis의 데이터 구조 : Strings : 텍스트, 직렬화된 개체 및 이진 배열을 포함하여 바이트 시퀀스를 저장 Lists : 문자열 값의 연결된 목록 스택과 큐를 구현 백그라운드 작.. 2023. 7. 9. [Kafka] 멱등성/At least once/At most once/Exactly once MSA(Micro Service Architecture)에서 EDD(Event Driven Development)를 기반으로 개발을 할 때 Kafka를 이벤트 브로커로 많이 사용하게 되고, 그와 더불어서 이슈가 되는 것이 멱등성에 관한 내용이다. 아래 글은 Kafka에서 멱등성과 관련된 내용을 다룬 것이다. 1. 멱등성(Idempotence) : 멱등성 : 동일한 요청이 여러 차례 반복되어 작업이 처리되어도 동일한 결과를 나타내는 특성 Kafka의 Producer와 Consumer가 Pull 방식으로 발생한 이벤트를 처리하는데, 여기서 Producer와 Consumer에서 메시지 유실 또는 메시지 중복 처리가 발생할 수 있고, 이는 멱등성을 보장하지 못한다. 2. At least once : at_lea.. 2023. 7. 1. [Ubuntu/AWS] 스토리지 확장 적용 ※ 해당 세팅은 ubuntu 22.04 기준으로 작성된 게시글이다. 아래는 현재 사용중인 서버의 스토리지의 총량과 사용량을 나타내는 명령어이다. # EC2 인스턴스 내 사용 가능 스토리지 확인 # -h 옵션은 사람이 읽기 좋은 단위로 변환 $ df -h AWS에서 초기에 세팅한 스토리지(EBS)의 용량에서 추가로 확장 시켜도 위의 명령어를 통해서 EC2 인스턴스에서 적용이 되지 않은 것을 확인할 수 있다. AWS에서도 스토리지의 설정을 한 후 적용되는 시간이 필요하고, 이후에도 위의 명령어를 이용하여 적용이 되지 않았다면 아래의 절차에 따라서 스토리지 마운트를 하여 이용할 수 있다. AWS의 스토리지에 변화가 있을 때, EC2에서 사용하는 모든 스토리지에 관련이 있고, EC2에 종속된 스토리지의 볼륨의 .. 2023. 6. 29. [Ubuntu/Linux] 사용자 계정 생성 및 접속 방법 AWS 또는 GCP의 클라우드 서비스에서 EC2나 Cloud Engine(VM)을 이용하여 개발할 때, Ubuntu(또는 CentOs)를 많이 이용한다. 통상적으로 서버에 접속할 때는 CSP(Cloud Service Provider)에서 제공하는 브라우저에서 접속하거나, 비밀 키를 이용하여 Putty나 터미널을 이용하여 root계정에 접속하여 작업을 하는데, 이러한 방식은 번거로우며 비밀 키에 대한 엄격한 관리가 필요하다. # ssh 접속 예시ssh -i [비밀 키] [사용자 계정 이름]@[인스턴스 서버 IP] 이러한 부분에서 사용자 계정을 생성하고 비밀번호를 설정하여 서버에 접속하게 된다면, 비밀키를 관리하는 노력을 줄일 수 있을 것이다. 여러 명의 사용자가 서버에 접속할 필요가 있을 때, 다수의 사.. 2023. 6. 27. 이전 1 ··· 11 12 13 14 15 16 17 ··· 20 다음