일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- docker
- Til
- LV02
- SQL
- S3
- LV1
- 네트워크
- CoffiesVol.02
- 디자인 패턴
- 이것이 자바다
- JPA
- Lv.0
- 배열
- Redis
- LV03
- 일정관리프로젝트
- 연습문제
- 알고리즘
- 데이터 베이스
- LV0
- LV.02
- spring boot
- Java
- 프로그래머스
- 코테
- mysql
- LV01
- 포트폴리오
- GIT
- Join
- Today
- Total
목록전체 글 (195)
코드 저장소.

목차 1.Rebase?2.Rebase vs Merge3.적용 1.Rebase?깃에서 사용하는 rebase는 기존에 다른 브랜치에서 작업을 했던 내용을 옮기는 것을 리베이스라고 합니다. 리베이스의 특징은 다음과 같다:커밋 기록이 깔끔하게 한 줄로 정리된다.분기 흔적 없이, 마치 처음부터 같은 줄기에서 작업한 것처럼 보인다.하지만 원래 커밋 기록이 변형되기 때문에 주의가 필요하다.리베이스를 하면 깃 그래프는 다음과 같습니다. o---o---o---o---o---o (main + feature rebased) 그럼 흔히 다른 브랜치와 합치는것이라면 떠오르는 것이 Merge인데 이번에는 Rebase와 Merge의 차이점에 대해 알아보겠습니다.2.Rebase vs Merge우선 Merge는 아시다시피 다른 브랜..
목차1.왜 이벤트 드리븐인가? (비동기, 느슨한 결합의 필요성)2.이벤트 드리븐 아키텍처란? 3.일정 관리 프로젝트 구조에 적용하기. 1.왜 이벤트 드리븐인가? (비동기, 느슨한 결합의 필요성)기존의 웹 애플리케이션은 대부분 RESTful API 기반의 동기식 통신 구조를 사용한다. 이 방식은 구조가 단순하고 개발이 쉽지만, 다음과 같은 단점이 있다:서비스 간 강한 결합도 발생기능 추가/변경 시 기존 코드 수정이 필요처리 속도 저하 (모든 후처리를 요청 스레드에서 처리함)예를 들어, 내가 개발 중인 일정 관리 프로젝트에서는 단순히 일정을 생성하는 것뿐 아니라, 다음과 같은 후처리 작업이 필요했다:실시간 WebSocket 알림 전송반복 일정 자동 생성회원가입시의 이메일 발송일정 변경/삭제에 따른 연관 작업..

목차1.개념: 이항계수란 무엇인가 2.적용: Java로 이항계수 계산하기 3.후기: 실제 코딩테스트 대비 1.개념: 이항계수란 무엇인가이항계수는 n개 중 r개를 순서 없이 고르는 방법의 수를 의미합니다.공식은 다음과 같습니다:이항계수는 고등학교 확률과 통계 과목에서 배우는 기본 개념입니다.코딩테스트에서는 조합 문제를 풀거나, 확률 계산 문제를 풀 때 필수적으로 등장합니다.이항계수는 작은 수에서는 손으로 구할 수 있지만, n이 커지면 효율적인 계산법이 필요합니다.2.적용: Java로 이항계수 계산하기이항계수를 Java로 계산하는 방법은 문제 조건에 따라 선택해야 합니다.2.1. 기본 방식: 팩토리얼로 직접 계산간단한 경우에는 팩토리얼을 사용해서 직접 계산할 수 있습니다.public static long f..

목차1.PresingedUrl구조 및 흐름도2. 코드 적용3.회고 1.PresingedUrl구조 및 흐름도우선은 지난 글에서 기존의 첨부파일의 로직의 단점을 설명했고 이번에는 S3를 활용한 PreSignedUrl을 구현해보겠습니다. 아래의 도식은 제가 작성한 업/다운로드의 흐름도 입니다.위의 사진을 토대로 설명을 드리겠습니다. 우선 업로드의 흐름은 다음과 같습니다.클라이언트가 첨부파일을 업로드를 합니다. 그 후 서버에서는 S3를 거쳐서 업로드를 할 수 있는 URL을 프론트에게 응답을 해줍니다.클라이언트에서 서버가 보내준 해당 URL을 기준(제한 기간 있음)으로 첨부파일을 S3에 업로드를 합니다. 그 다음 서버에서 첨부파일을 디비에 저장을 하고 섬네일을 생성합니다.다음은 다운로드의 흐름입니다.프론트에서 다..
목차1.에라토네스의 체?2.작동원리3.예제 1.에라토네스의 체?에라토네스의 체는 대 그리스의 수학자 에라토스테네스가 고안한 소수 판별 알고리즘이다. 이 알고리즘은 2부터 N까지의 자연수 중에서 소수를 효율적으로 찾는 방법으로, 현재까지도 널리 사용되고 있다.2.작동원리에라토스테네스의 체는 배수 제거 방식을 사용하여 소수를 판별한다. 초기에는 2부터 N까지의 모든 정수를 소수라고 가정한 뒤, 각 수의 배수를 지워나가면서 최종적으로 소수만을 남기는 방식입니다. 작동원리는 다음과 같습니다. 만약에 n 이 30일 때2부터 30까지 나열→ [2, 3, 4, 5, ..., 30]가장 작은 수인 2는 소수니까 남기고, 2의 배수들 제거남은 수 중 다음 작은 수(3)는 소수니까 남기고, 3의 배수들 제거남은 수 중 ..

목차1.메시지 큐2.Kafka의 작동원리3.RabbitMq의 작동원리4.Kafka vs RabbitMq 1.메시지 큐일단은 Kafka와 RabbitMq를 알기 위해서는 메시지큐의 개념을 알아야 합니다. 우선은 아래의 사진을 보면 메시지 큐에 대한 개념을 알 수 있습니다. 위 사진의 용어를 보면 다음과 같습니다. Producer : 정보를 제공하는 자Queue: FIFO의 개념으로 Producer에서 보낸 메시지를 처리를 하는 방식으로 처리합니다.Consumer: 정보를 받는 자. 그래서 메시지큐의 작동순서를 다시 정리를 하자면 다음과 같습니다. 1.메시지를 보낸다.2. 보낸 메시지는 Producer가 받아서 Queue에 보낸다.3.해당 메시지는 consumer가 사용하기 전까지 Queue에서 저장한다...