post-thumbnail

GRPC, DDD

장점:javascript에서 많은 오버헤드를 발생시키는 json의 직렬화 및 역직렬화를 수행하지 않으며, 이진데이터를 통해서 데이터를 송수신 하기 때문에, 성능이 api통신에 비해서 뛰어나다.메세지 유형 정의 : protocol buffers를 사용하여 메시지 유형을

3일 전
·
0개의 댓글
·

Pub/Sub 과 producer/consumer

Pub/Sub 구조에서는 Subscriber들이 publisher가 발행한 모든 데이터를 처리하면, 중복으로 같은 데이터를 처리할 가능성이 생긴다....중복 처리가 필요할 것 같다. Producer/Consumer 구조에서도 찾아본 바, Consumer가 브로커에 적재

3일 전
·
0개의 댓글
·

JavaScript 비동기

프로미스는 비동기 작업의 결과를 나타내는 객체이다. 세 가지 상태(Fulfilled, rejected, pending) 상태를 가지고 있으며, 이러한 상태 변화에 따라 콜백 함수들이 실행된다.'.then()'과 '.catch()'메서드를 사용하여 Promise의 결과나

2023년 5월 28일
·
0개의 댓글
·

GRPC

장점:javascript에서 많은 오버헤드를 발생시키는 json의 직렬화 및 역직렬화를 수행하지 않으며, 이진데이터를 통해서 데이터를 송수신 하기 때문에, 성능이 api통신에 비해서 뛰어나다.메세지 유형 정의 : protocol buffers를 사용하여 메시지 유형을

2023년 5월 27일
·
0개의 댓글
·

Active Record 패턴

Active Record패턴은 소프트웨어 개발에서 데이터 베이스 레코드와 객체를 1:1로 매핑하는 패턴이다. 이 패턴은 데이터베이스 테이블의 각 레코드가 객체로 표현되며, 객체는 데이터베이스와 상호 작용하는 CRUD(Create, Read, Update, Delete)

2023년 5월 21일
·
0개의 댓글
·

Data Mapper

Data Mapper는 소프트웨어 개발에서 객체와 데이터베이스 간의 매핑을 담당하는 패턴이다. 이 패턴은 도메인 객체와 데이터베이스 간의 결합도를 낮추고, 데이터베이스 스키마의 변경에도 도메인 객체에 영향을 주지 않도록 한다. Data Mapper는 도메인 객체의 상태

2023년 5월 21일
·
0개의 댓글
·

Mysql Foreign key

외래키는 두 테이블을 서로 연결하는 데 사용되는 키이다.외래키가 포함된 테이블을 자식 테이블이라 하고 외래키 값을 제공하는 테이블을 부모 테이블이라한다.외래키 값은 NULL이거나 부모 테이블의 기본키 값과 동일해야 한다. (참조 무결성 제약조건)부모 테이블의 기본키,

2023년 5월 20일
·
0개의 댓글
·
post-thumbnail

DDD(Domain Driven Design) 도메인 주도 설계

소프트웨어로 해결하고자 하는 문제영역소프트웨어를 사용하는 사용자의 활동이나 관심사와 관련되어 있다.소프트웨어 산업은 다른 산업 내에서 발생하는 다양한 비즈니스 문제를 해결한다ex) 쇼핑몰을 구축할 때, 도메인은 전자상거래이다소프트웨어는 사람의 욕망과 욕구를 해결하려고

2023년 5월 17일
·
0개의 댓글
·

MySQL8.0 5장 잠금과 트랜잭션

최근 노션으로만 정리를하다 보니 velog 이용을 하지 않게 됐다..오랜만에 velog를 통해서 정리하고자 한다.MySQL 스터디를 진행하면서 DB에 대해 공부하면서 재밌게 배워가고 있다. 이번에는 DB 인덱스에 대해 스터디하기로 했는데, 기대가 된다!...일단 이전에

2023년 5월 13일
·
0개의 댓글
·
post-thumbnail

유니코드 UTF-8, UTF-16 , UTF-32

옛날에는 1byte(0~255)를 통해 데이터를 표현했다. '영어'와 몇가지 '특수문자'만 사용했지만 이후 다른 나라의 언어를 표현하기 위해 국제적으로 전세계 언어를 모두 표시할 수 있는 표준코드를 만들었다. 이것이 바로 유니코드(Unicode)다. 유니코드는 글자와

2023년 3월 26일
·
0개의 댓글
·
post-thumbnail

HTTP/HTTPS !?

HTTP(Hyper Text Transfer Protocol)란 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜이다.즉, HTTP는 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 포트를 사용하고 있다. 따라서 HTTP 서버가 80번 포트에

2023년 3월 16일
·
0개의 댓글
·

Redis 캐시 기능 이용

spring boot에서 redis cache를 이용할 때, 리턴 값에 따라 정해진 key에 따른 value가 저장된다!!!docker 이미지로 빌드된 Redis에서 redis-cli 접근법docker exec -it 컨테이너이름 redis-cli이 부분을 모르고, 내

2023년 3월 10일
·
0개의 댓글
·
post-thumbnail

Base64 인코딩 디코딩

base64를 글자 그대로 직역하면 64진법 이라는 뜻이다. 컴퓨터 분야에서 쓰이는 Base64란 8비트 이진 데이터를 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식을 가리키는 개념이다.base64는 어떤

2023년 3월 5일
·
0개의 댓글
·
post-thumbnail

GitHub Actions

Events main 브랜치로 머지, 커밋을 푸시, 이슈를 누군가 열면 Workflows Jobs Actions Runners

2023년 2월 24일
·
0개의 댓글
·

Docker container실행했을 때, Redis컨테이너 연결

redis 컨테이너와 mofit-backend 컨테이너는 동일한 Docker network 내에 있어야 서로 통신할 수 있습니다. Docker 네트워크는 기본적으로 생성되는 bridge 네트워크 외에도, 사용자가 직접 생성할 수도 있습니다.아래는 mofit-networ

2023년 2월 24일
·
0개의 댓글
·
post-thumbnail

DB락 - 조회

데이터베이스마다 다르지만, 보통 데이터를 조회할 때는 락을 획득하지 않고 바로 데이터를 조회할 수 있다. 예를 들어서 세션1이 락을 획득하고 데이터를 변경하고 있어도, 세션2에서 데이터를 조회는 할 수 있다. 물론 세션2에서 조회가 아니라 데이터를 변경하려면 락이 필요

2023년 2월 20일
·
0개의 댓글
·
post-thumbnail

DB락 개념이해

세션 1일 트랜잭션을 시작하고 데이터를 수정하는 동안 아직 커밋을 수행하지 않았는데, 세션2에서 동시에 같은 데이터를 수정하게 되면 여러가지 문제가 발생한다. 바로 트랜잭션의 원자성이 깨지는 것이다. 여기에 더해 세션1이 중간에 롤백을 하게 되면 세션2는 잘못된 데이터

2023년 2월 20일
·
0개의 댓글
·
post-thumbnail

자동커밋 & 수동커밋

트랜잭션을 사용하려면 먼저 자동 커밋과 수동 커밋을 이해해야 한다.자동 커밋으로 설정하면 각각의 쿼리 실행 직후에 자동으로 커밋을 호출한다. 따라서 커밋이나 롤백을 직접 호출하지 않아도 되는 편리함이 있다. 하지만 쿼리를 하나하나 실행할 때 마다 자동으로 커밋이 되어버

2023년 2월 20일
·
0개의 댓글
·
post-thumbnail

데이터베이스 연결 구조와 DB세션

사용자는 웹 애플리케이션 서버(WAS)나 DB 접근 툴 같은 클라이언트를 사용해서 데이터베이스 서버에 접근할 수 있다. 클라이언트는 데이터베이스 서버에 연결을 요청하고 커넥션을 맺게 된다. 이때 데이터베이스 서버는 내부에 세션이라는 것을 만든다. 그리고 앞으로 해당 커

2023년 2월 19일
·
0개의 댓글
·

트랜잭션

데이터를 저장할 때 단순히 파일에 저장해도 되는데, 데이터베이스에 저장하는 이유는 무엇일까? 여러이유가 있지만, 가장 대표적인 이유는 바로 데이터베이스는 트랜잭션이라는 개념을 지원하기 때문이다.트랜잭션을 이름 그대로 번역하면 거래라는 뜻이다. 이것을 쉽게 풀어서 이야기

2023년 2월 19일
·
0개의 댓글
·