자유로운 블로그
close
프로필 배경
프로필 로고

자유로운 블로그

  • 분류 전체보기 (31)
    • Docker (2)
    • Spring (8)
    • AWS (8)
      • EC2 (8)
    • Jenkins (3)
  • 홈
  • 태그
  • 방명록
[RDS] EC2 인스턴스 SSH 터널링을 통한 AWS RDS 접속(DBeaver 사용)

[RDS] EC2 인스턴스 SSH 터널링을 통한 AWS RDS 접속(DBeaver 사용)

이번 포스트에서는 RDS 로 생성한 DB에 EC2 인스턴스 를 이용한 SSH 터널링 방식 으로 접근하는 방법을 설명합니다.1. 왜 EC2 터널링으로 RDS에 접속하는가?보안 강화RDS는 서비스의 중요한 정보를 저장하고 있어 직접 public 접근을 허용하는 것은 보안에 취약할 수 있습니다.(무결성 훼손 위험)EC2 인스턴스를 통해 SSH 터널링으로 접근하게 하면, 특정 EC2 인스턴스에만 RDS 접근을 허용할 수 있어 더 안전합니다.이를 위해 RDS와 EC2 인스턴스가 같은 VPC에 있어야 하며, EC2 인스턴스는 퍼블릭 서브넷에 연결되어 있어야 합니다.2. 구현 단계RDS 및 EC2 인스턴스 생성을 완료한 후 다음 설정을 진행합니다.RDS와 EC2는 동일한 VPC 안에 존재해야 합니다.EC2 인스턴스는..

  • format_list_bulleted AWS
  • · 2024. 11. 14.
  • textsms
[Docker] Docker Compose로 다중 컨테이너 배포 (1) - 도입 배경과 핵심 개념

[Docker] Docker Compose로 다중 컨테이너 배포 (1) - 도입 배경과 핵심 개념

1. 도입배경Docker를 이용해 프로젝트 개발 중, 여러 컨테이너를 개별적으로 관리하는것이 비효율적이고 불편하다고 느꼈습니다.Docker Compose는 이러한 문제를 해결해주는 도구로, 여러 컨테이너를 하나의 docker-compose.yml 파일로 정의하고, 이를 통해 일괄적으로 관리할 수 있는 도구입니다.Docker Compose를 사용하면 한 번의 명령으로 여러 서비스를 동시에 실행하거나 중지할 수 있어, 개발 및 운영 환경에서의 복잡한 작업을 간소화할 수 있습니다.현재 프로젝트에서는 프론트엔드 서버(Nginx), 백엔드 서버(Spring Boot), 캐시 서버(Redis) 등 여러 컨테이너가 함께 운영되어야 합니다. 이처럼 다양한 서비스를 효율적으로 관리하기 위해 Docker Compose를 ..

  • format_list_bulleted Docker
  • · 2024. 11. 8.
  • textsms
[Spring] OAuth2 기반 회원 인증 시스템  도입 (2) - Naver 로그인 구현,Spring코드 구현

[Spring] OAuth2 기반 회원 인증 시스템 도입 (2) - Naver 로그인 구현,Spring코드 구현

Spring Boot에서 네이버 로그인 API를 통한 OAuth2 인증 구현하기이번 포스트에서는 Spring Boot에서 네이버 로그인 API를 사용해 OAuth2 인증을 구현하는 방법을 설명합니다.상세한 설정 사항은 네이버 개발자 센터에서 확인하실 수 있습니다.1. 네이버 로그인 API 신청1) 애플리케이션 등록애플리케이션 이름 등록: 식별할 수 있는 이름을 설정합니다.사용 API 선택: 로그인 기능을 사용할 것이므로 ‘로그인’을 선택합니다제공 정보 선택: 필요한 정보를 선택합니다. 단, 네이버 정책상 이메일은 네이버 외 다른 도메인일 수 있습니다(@google.com 등).2) 서비스 환경 설정서비스 URL: 현재 도메인(테스트 환경에서는 localhost:8080)을 입력합니다.Callback UR..

  • format_list_bulleted Spring
  • · 2024. 11. 7.
  • textsms
[Spring] OAuth2 기반 회원 인증 시스템  도입 (1) - 도입배경,이론

[Spring] OAuth2 기반 회원 인증 시스템 도입 (1) - 도입배경,이론

1. 도입배경프로젝트 진행 중, 사용자 편의를 위해 소셜 아이디로 간편하게 로그인할 수 있는 기능을 구현할 필요성을 느꼈습니다.많은 사이트에서 사용하는 OAuth 2.0 방식을 도입하여 보안성을 높이고 로그인 과정을 간소화하였습니다.2. OAuth21) OAuth2 란?OAuth 2.0은 사용자의 로그인 정보를 공유하지 않고도 애플리케이션이 외부 서비스에 안전하게 접근할 수 있게 해주는 인증 및 권한 위임 방식입니다.Google, Naver, Kakao와 같은 플랫폼들이 이를 위한 API를 제공하고 있습니다..OAuth 2.0에서는 사용자의 아이디와 비밀번호를 직접 다루지 않고 토큰 기반 인증을 통해 권한을 부여합니다2) 왜 OAuth2를 쓰는가?보안성: 애플리케이션 데이터베이스(DB)에서 사용자의 아이..

  • format_list_bulleted Spring
  • · 2024. 11. 7.
  • textsms
[Spring] Full-Text Index를 활용한 DB 검색 성능 최적화 (2) - Spring 코드 구현, 성능 비교 테스트

[Spring] Full-Text Index를 활용한 DB 검색 성능 최적화 (2) - Spring 코드 구현, 성능 비교 테스트

서론데이터베이스 검색 성능 최적화: JPA와 Native Query 비교데이터베이스의 검색 성능을 최적화하기 위해, 동일한 데이터를 반환하는 코드를 JPA와 Full Text Index를 활용한 Native Query 두 가지 방식으로 코드를 작성하고 성능을 비교해 보았습니다.각각의 코드에서 페이지네이션 및 검색 조건을 동일하게 적용하여, 실제 프로젝트 환경과 유사한 조건에서 성능을 평가했습니다.1. 비교 테스트용 코드 작성1). JPA 코드JPA에서는 JPQL을 사용하여 소설 제목(Novel)과 관련 메타 데이터(NovelMetaData), 작성자(Member) 테이블을 JOIN하여 데이터를 조회합니다.LIKE 와 와일드카드로(% %)로 검색어를 바탕으로 레코드를 조회하고, 필요한 값만 List 형식으..

  • format_list_bulleted Spring
  • · 2024. 11. 6.
  • textsms
[Spring] Full-Text Index를 활용한 DB 검색 성능 최적화 (1) 도입배경, MySQL Full-Text Index 생성

[Spring] Full-Text Index를 활용한 DB 검색 성능 최적화 (1) 도입배경, MySQL Full-Text Index 생성

도입배경JPA를 이용해 검색 기능을 구현했지만, 대량의 레코드에서 검색 시간이 오래걸리는 문제가 발생하였습니다.Native Query와 Full Text Index를 활용하여 검색 성능을 개선할 수 있다는것을 알게되습니다.직접 코드를 구현하여 성능일 비교하고, 프로젝트에 적용해보았습니다.Full Text Index를 사용하는 이유Full Text Index는 텍스트 기반 데이터의 검색 속도를 높이기 위한 인덱스 방식입니다.특히 긴 문자열에서 특정 단어를 빠르게 찾기 위해 사용되며, 검색 대상이 되는 데이터가 크고 복잡할수록 성능 향상이 두드러집니다.한국어는 영어와 달리 단어별로 명확한 띄어쓰기가 없어 검색 성능 향상이 쉽지 않지만, MySQL의 n-gram parser를 이용해 이를 보완할 수 있습니다...

  • format_list_bulleted Spring
  • · 2024. 11. 6.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (31)
    • Docker (2)
    • Spring (8)
    • AWS (8)
      • EC2 (8)
    • Jenkins (3)
최근 글
인기 글
최근 댓글
태그
  • #티스토리챌린지
  • #오블완
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바