일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드스튜디오
- 알고리즘
- 카카오코테
- groupby
- 티스토리챌린지
- Kotlin
- 혼공챌린지
- 오블완
- select
- CS
- 혼공파
- SQL
- MySQL
- 기술면접
- 인프런
- 스터디
- 코테
- doitandroid
- 코틀린
- 안드로이드
- 혼공단
- 정보처리기사
- 정처기
- 자료구조
- Til
- Android
- 자바
- java
- join
- 프로그래머스
- Today
- Total
목록전체 글 (378)
Welcome! Everything is fine.

캐싱(caching)이란?Redis에 대해 알아보기 전, 먼저 캐시 & 캐싱이 무엇인지 알아보자! 파레토의 법칙에 따라 자주 사용되는 20%의 데이터를 미리 캐싱해둔다면 효과적인 성능 향상을 기대할 수 있다.캐시(Cache) : 원본 저장소보다 데이터를 더 빠르고 효율적으로 가져올 수 있는 임시 데이터 저장소.캐싱(Caching) : 캐시에 접근해 데이터를 빠르게 가져오는 방식.캐시 사용 시 주의사항자주 사용되면서 변경이 적은 데이터에 적합하다.유실되어도 크게 문제가 없는 데이터에 적합하다.DB와 함께 사용 시 데이터 정합성 문제를 고려해야한다.데이터 캐싱 전략단순히 "캐싱"만 한다고 성능이 무조건 보장되는 것은 아니다. 어떻게 캐싱하느냐가 중요하다.대표적인 데이터 캐싱 전략을 알아보자.Cache Asi..

문제점애플리케이션을 실행하자, 다음과 같은 에러가 발생했다.원인Bean 초기화 시에 순환 참조가 생기면서 앱이 실행되지 않았다.EventService → EventJoinService를 @RequiredArgsConstructor로 주입EventJoinService → EventService를 또 @RequiredArgsConstructor로 주입서로 의존성을 주입하고 있어서 다음과 같은 순환 의존 구조가 된 것이다.EventController → EventService → EventJoinService → EventService (다시 참조)해결 과정기존에 EventJoinService에서 사용하고 있던 EventService를 EventRepository로 바꿨다.EventServic..

🍽️최종 프로젝트 시작!드디어 최종 프로젝트를 시작했다. 사실 벌써 2주차가 끝났지만 정신없이 달려오다보니 블로그에 기록을 하지 못했다. 한 주가 끝날 때마다 꾸준히 기록하는 습관을 가지자.✍🏻우리 팀은 테이블링 서비스를 주제로 정했다!프로젝트명 : TableNow (테이블나우)주제 : 식당을 예약하고 방문할 수 있는 실시간 예약 관리 시스템📆 1 ~ 2주차 일정S.A 작성 후 피드백 받기기본 기능 개발 완료기본 기능 개발 후 코드리뷰 받기핵심 기능우리 팀의 핵심 기능은 다음과 같이 정리할 수 있다.인증/보안Spring Security + JWTRefresh Token 저장 및 관리(Redis)OAuth2.0 로그인 연동검색/캐싱인기 검색어 캐싱(Redis)Elasticsearch동시성 제어Redi..

처음으로 자동 배포를 설정하면서 겪은 트러블슈팅을 기록하고자 한다.✍🏻우선 CI/CD 환경은 다음과 같다.EC2: Ubuntu 22.04, Docker 설치ECR: Spring Boot 앱 이미지를 빌드하여 pushRDS: MySQL DB 사용배포 방식: GitHub Actions를 통한 CI/CD 자동화EC2 배포 시 오류 발생command not found 에러docker: command not found 에러는 EC2 서버에 Docker가 설치되어 있지 않아서 발생한 오류다. GitHub Actions에서 EC2로 SSH 접속은 성공했지만, EC2 안에 docker 명령어 자체가 없어서 전부 실패한 상황이다. EC2에 SSH 접속 후 아래 명령어 실행해 Docker를 설치한다.sudo apt up..
보호되어 있는 글입니다.
보호되어 있는 글입니다.

QueryDSL란?DSL(Domain-Specific-Language) : 특정 도메인에서 발생하는 문제를 효과적으로 해결하기 위해 설계된 언어.(ex. SQL, CSS, Regex 등)QueryDSL : SQL 형식의 쿼리를 Type-Safe하게 생성할 수 있도록 하는 DSL을 제공하는 라이브러리. 엔티티의 매핑정보를 활용하여 쿼리에 적합하도록 쿼리 전용 클래스(Q클래스)로 재구성해준다.✔️ Q클래스란?Q클래스란 엔티티 클래스 속성과 구조를 설명해주는 메타데이터로, Type-Safe하게 쿼리 조건을 설정할 수 있다.annotationProcessor를 통해 생성된 실제 Q클래스는 다음과 같다.다 캡쳐하진 못했지만, Todo의 필드가 QTodo에서도 보이는 것을 알 수 있다. QueryDSL 시작하기qu..

이번 개인 과제 중 AWS를 실습하는 부분이 있는데, 요구사항은 다음과 같다. 먼저 EC2와 RDS를 구축하고 연결하는 과정을 기록해보려고 한다.✍🏻✔️ EC2- EC2 인스턴스에서 어플리케이션을 실행한다.- 탄력적 IP를 설정해 외부에서도 접속할 수 있도록 한다.- 서버 접속 및 Live 상태를 확인할 수 있는 health check API를 만든다.✔️ RDS- RDS 데이터베이스를 구축한다.- EC2에서 실행되는 어플리케이션에 연결한다.✔️ S3- S3 버킷을 생성한다.- 유저의 프로필 이미지 업로드 및 관리 API를 구현한다.프로젝트를 EC2에 배포하기로컬에서 프로젝트 빌드하기인텔리제이에서 프로젝트를 빌드해보자! EC2 인스턴스는 이미 만들어놨다는 가정 하에 진행하겠다.1) Gradle 탭에서 ..