본문 바로가기 메뉴 바로가기

Work Note

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

Work Note

검색하기 폼
  • Document (18)
    • Programming (14)
      • Front-End (7)
      • Back-End (6)
      • Browser (1)
    • DB (1)
    • Git (3)
    • Etc (0)
  • 방명록

Programming/Back-End (6)
동시성 이슈를 해결하기 위한 Redisson 분산 락(Lock) 사용해보기

Redisson ?Java 기반의 분산 데이터 처리와 캐싱 솔루션을 제공하는 오픈 소스 라이브러리Redis를 기반으로 동작하며 Redis에 접근하기 위한 클라이언트 제공Redisson 에서 제공하는 분산 데이터 구조를 활용하여 데이터 처리 및 캐시 관리가 가능 Redisson  분산 락(Lock) 사용은 왜 ?데이터의 일관성과 무결성을 보장하기 위해 여러 애플리케이션 인스턴스나 스레드를 동일한 자원에 동시에 접근하지 못하게끔 하여 동시성 제어로 사용  Setting 🔍[ springboot 환경 내에서 처리 ]1. Gradle 의존성 추가 Spring Boot와의 통합을 위한 스타터Spring Data Redis와 쉽게 통합 가능Redis 연결 설정이 간단Spring 환경에서 사용할 경우 반드시 추가해..

Programming/Back-End 2025. 1. 24. 15:37
주요 특징 위주로 개념 정리해 본 Redis 란?

Remote Dictionary Server 오픈 소스 기반의 인메모리(In-Memory) 데이터 저장소NoSQL 데이터베이스  1. In-Memory 데이터 저장소1) 데이터를 주기억장치인 RAM에 저장2) 메모리 내부에서 처리되므로 매우 빠른 속도로 처리 가능3) 서버 장애가 발생할 경우 데이터 유실이 발생될 가능성이 높아 저장할 데이터를 잘 구분하여 저장 데이터 수정이 빈번하게 되지 않고 자주 사용하는 데이터를 저장  2. 키-값(Key-Value) 기반 저장소로 키에 다양한 데이터 타입 설정 가능String: 단순 값 저장List: 값들의 순서를 유지하는 리스트Hash: 필드-값 쌍 저장 (Map 구조)Set: 중복되지 않는 값들의 집합Sorted Set: 값과 점수를 저장하여 점수로 정렬 가능B..

Programming/Back-End 2025. 1. 14. 18:19
JWT 인증 강화 방식(Access Token, Refrash Token)

JWT 인증 강화 방식 ❔1. Access Token 로그인 세션에 대한 보안 자격 증명을 포함하고 사용자, 사용자 그룹, 사용자 권한 및 경우에 따라 특정 응용 프로그램을 식별하는데 사용하는 토큰. 2. Refrash Token 액세스 토큰의 짧은 유효 기간 및 보안 강화 특징을 보완하고, 사용자가 로그인 상태를 유지하고 보호된 리소스에 지속적으로 액세스할 수 있도록 도와주는 역할을 하는 토큰.   사용자가 로그인 시(인증 요청 시), Access Token 과 Refresh Token 둘 다 동시에 발급 받게 되어 있지만 실제 권한이 주어지는 토큰은 Access Token 이다. 실제 권한이 주어지는 Access Token 만 주어진다면 해당 토큰을 만료되기 전까지 누구나 발급 받을 수 있기 때문에 ..

Programming/Back-End 2024. 4. 9. 14:35
Cookie(쿠키)/Session(세션)/Token(토큰)/JWT 개념 및 특징, 인증 방식, 차이점

쿠키(Cookie) ❔서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각.브라우저에서 서버에 요청을 보내면 서버는 브라우저에 응답을 보내게 되는 구조에서 서버에서 온 응답에는 브라우저에 저장하고자 하는 쿠키가 존재.웹 사이트를 이용할 때 쓰는 프로토콜인 HTTP는 무상태성(stateless)을 가지고 있기 때문에 클라이언트 요청이 끝나고 나면 서버는 해당 클라이언트가 누군지 모르기 때문에 요청할 때마다 누군지 알려줘야 하는 상황이 발생!(+ 서버로 가는 모든 요청이 이전 요청들과 독립적으로 다뤄지며 각 요청끼리는 연결점이 없다.) 즉, HTTP 쿠키는 상태가 있는 세션을 만들도록 해주며 헤더 확장성을 사용하여, 동일한 컨텍스트 또는 동일한 상태를 공유하기 위해 각각의 요청들에 세션을 만들도록 HTT..

Programming/Back-End 2024. 3. 12. 12:16
MVC 패턴 정의 및 구조

MVC 패턴이란?Model-View-Controller 로 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 사용되는 소프트웨어 디자인 패턴 중 하나이다.  특징각각의 역할을 가진 기능을 나눠서 처리하기 때문에 결합도를 낮출 수 있고 해당되는 컴포넌트만 수정하면 되기 때문에 유지보수성도 편리하다.기능 별로 나뉘어졌기 때문에 한 파일에 응집되어 있는 코드를 분산 시킬 수 있고 그로인해 코드의 가독성, 확장성, 재사용성이 좋다는 특징을 가지고 있다.  각 컴포넌트 역할1. ModelDB와 연동하여 사용자가 입력한 데이터나 사용자에게 출력할 데이터를 다루는 일트랜잭션을 다루는 일도 처리사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 하며 View나 Controller에 대해 어떠한 정보도 알지 말아야..

Programming/Back-End 2023. 12. 14. 15:55
MyBatis 구현한 쿼리 Spring Data JPA + QueryDSL 로 변환 방법

MyBatis? 객체 지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 쉽게 할 수 있도록 도와 주는 개발 프레임 워크. XML 파일의 형태인 mapper를 통해서나 annotation을 사용하여 저장 프로시저나 SQL 문으로 객체를 연결해주는 역할. JDBC 모든 기능을 제공함으로써 길어지기 쉬운 쿼리를 간결화할 수 있고 쉽게 접근하여 사용할 수 있다. (JDBC는 DB에 접근할 수 있도록 자바에서 제공하는 API) 프로그래밍 코드에서 분리됨에 따라 자바 코드를 수정하지 않고 mapper 파일만 수정하여 확인이 가능하다. 서비스에서 쿼리를 호출할 경우, DAO 에서 쿼리를 호출하는 아키텍쳐를 가지고 있다. Spring Data JPA? JPA는 Java Persistentce API의 약자로 JAVA..

Programming/Back-End 2023. 12. 7. 17:45
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • github사용법
  • db락
  • redisson적용
  • 데이터베이스락
  • redis
  • git #git_branch_전략 #gitlab_mr
  • 동시성이슈해결방안
  • MVC패턴정의
  • Redisson
  • 동시성이슈
  • redisson분산락
  • gitlab
  • MVC패턴구조
  • querydsl
  • 반응형이미지맵
  • 낙관적락
  • GitHub
  • 이미지맵
  • JPQL
  • redis특징
  • gitlab_mr_templates
  • mybatis
  • 데드락
  • MVC패턴특징
  • 블로킹
  • MVC패턴
  • gitlab_merge_request_templates
  • SpringDataJpa
  • imgmap
  • 비관적락
more
«   2025/06   »
일 월 화 수 목 금 토
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
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.