• 티스토리 홈
  • 프로필사진
    아몬드맛빼빼로
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
아몬드맛빼빼로
  • 프로필사진
    아몬드맛빼빼로
    • 분류 전체보기 (46)
      • Java (8)
      • C (3)
      • Springboot (7)
      • Kotlin (2)
      • 회고 (5)
      • Backend (13)
      • 기타 (5)
      • DevOps (3)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
# Home
# 공지사항
#
# 태그
# 검색결과
# 방명록
  • 포스트글 썸네일 이미지
    [Backend] pt-online-schema-change
    아몬드맛빼빼로:
    진짜 정말로 백엔드스러운 이름pt-online-schema-change, 이름만 들었을 땐 진짜로 이게 뭐지 싶었다. 멋스러움은 1도 없고 변수명 짓듯이 정해진 이런 이름이라니? 그런데 그러기에 오히려 흥미가 생겼다. 한마디로 요약하자면 MySQL에서 데이터베이스의 정지 없이 스키마를 변경할 수 있는 도구이다.사실은...MySQL은 5.6 버전부터 online DDL을 지원하기 시작하여서 이러한 도구가 정말로 필수적인 것은 아니다. 그러나 MySQL 5.6 이전부터 트리거 기반으로 구현된 online Alter 도구가 있었다. 이 도구 중에선 Percona에서 제공하는 pt-online-schema-change를 많이 사용하였다.작동구조pt-online-schema-change는 트리거를 활용하여 데이터..
    • 2025-09-04 10:04:15
  • 포스트글 썸네일 이미지
    [Backend] 네이버가 오픈소스를..? Fixture Monkey
    아몬드맛빼빼로:
    문제상황교내 입학지원시스템 HelloGSM의 테스트 코드 작성 중 문제가 한 가지 발생하였다. 입학지원시스템이다 보니 입학원서를 작성하게 되고 이 입학원서가 저장해야 하는 데이터가 워낙 방대하다 보니 이것을 테스트하는 테스트 코드에서 Mock 객체를 생성하는 부분이 굉장히 커지게 되었다. 이를 해결하기 위한 방안을 찾아보던 중 네이버에서 개발한 오픈소스 라이브러리 Fixture Monkey를 알게 되었다.이게 뭐에요간단히 이야기하자면 테스트 객체 생성을 간단하게 처리해 주는 라이브러리이다.아래와 같이 단 한 줄로 객체 생성이 가능하다.Oneseo oneseo = fixtureMonkey.giveMeOne(Oneseo.class);이를 통하여 객체 생성을 실제 코드에 대한 의존성 없이 수행할 수 있다 또한..
    • 2025-08-24 21:54:49
  • 포스트글 썸네일 이미지
    [Backend] EDA
    아몬드맛빼빼로:
    MSA나의 애플리케이션을 ‘독립적으로 배포 가능한 서비스 단위’로 분할을 하여, 서로 간의 변경과 조합이 가능하도록 이루는 구조를 갖는 것을 의미하며 현대적 백엔드 개발의 중심적인 아키택쳐로 평가받고 있다.그러나 공학에서 '완벽'은 없듯이문제점설명서비스 간 통신 문제각 서비스는 독립적으로 배포되고 운영되기에 다른 서비스와 통신시 지연이 발생할 수 있다.데이터 일관성 문제각 서비스는 독립적인 데이터를 각각 가지고 있기에 서비스가 서로 다른 데이터를 가져 문제 발생의 여지가 있다.트랜젝션 문제서비스가 독립적으로 동작하기에 각각의 서비스에서 발생하는 트랜젝션을 확인하기 어렵다.이러한 문제들이 있다.이러한 문제들을 일정 부분 해결할 수 있는 것이 EDA,이벤트 기반 아키택쳐이다.E..D..A?기본적으로 이벤트 ..
    • 2025-07-15 10:06:38
  • 포스트글 썸네일 이미지
    [Backend] OAuth와 JWT
    아몬드맛빼빼로:
    인증/인가개발자라면 한 번쯤 인증과 인가를 혼동해본 경험이 있을 것이다.인증(Authentication)은 "너는 누구냐?"에 대한 답이다. 로그인할 때 입력하는 아이디와 패스워드가 정말 그 사람 것인지 확인하는 과정이다. 카페에서 멤버십 카드를 보여주는 것과 같다고 생각하면 된다.인가(Authorization)는 "너는 무엇을 할 수 있냐?"에 대한 답이다. 로그인한 사용자가 특정 기능을 사용하거나 데이터에 접근할 권한이 있는지 판단한다. 회사에서 사원증으로 출입할 수 있는 층이 정해져 있는 것처럼 말이다.이 두 개념을 명확히 구분해야 JWT와 OAuth의 차이점도 이해할 수 있다.JWTJWT?JWT는 JSON Web Token의 줄임말이다. RFC 7519 표준으로 정의된 토큰 형식으로, 당사자 간에..
    • 2025-06-08 22:38:47
  • 포스트글 썸네일 이미지
    [Backend] MQ
    아몬드맛빼빼로:
    Message Queue?메시지 큐(Message Queue; MQ)는 메시지를 송신하는 애플리케이션(Producer)과 이를 수신하는 애플리케이션(Consumer) 간의 비동기 통신을 가능하게 하는 시스템이다. 메시지 큐를 사용하면 메시지를 임시 저장하는 큐를 통하여 애플리케이션 간 통신이 이루어지며 이로 인하여 애플리케이션의 확장성과 성능을 향상할 수 있다.주요 특징1. 비동기 통신: Producer와 Consumer는 당연하지만 독립적으로 동작하므로 Producer가 큐에 메세지를 넣으면 Consumer가 이를 필요하고 또한 가능할 때 가져가 처리한다. 따라서 서로 직접 통신하지 않아도 된다.2. 내결함성: 큐에 메세지를 저장함으로서 Consumer가 다운되거나 문제가 생기더라도 메시지가 큐에 저장..
    • 2025-05-05 16:23:35
  • 포스트글 썸네일 이미지
    [Backend] CloudWatch 이론
    아몬드맛빼빼로:
    CloudWatch?AWS에는 아주 다양한 서비스가 있다.그리고 이러한 서비스들을 모니터링해야 할 수 있는데 이를 위하여 AWS에서 지원하는 서비스이다. 각 서비스의 지표를 감시해 알림을 보내고 임계값을 넘거나 한다면 이벤트를 발생시킬 수 있다.지표만약, "EC2 인스턴스의 CPU 점유율을 보고 싶다""RDS 인스턴스의 CPU 점유율을 보고 싶다" 라고 한다면, EC2, RDS 는 논리적으로 구분하기 위한 Namespace 가 되고 CPU 점유율은 지표값(metric)이 된다.위 표와 같이 AWS 리소스를 가지고 있다고 하면 EC2, RDS 는 Namespace 라고 하며 인스턴스 개별로 보거나 인스턴스 유형(type) 으로 묶어서 보거나 또는, 같은 오토스케일링 그룹으로 묶어서 보는 것을 Dimensi..
    • 2025-04-29 22:51:42
  • 포스트글 썸네일 이미지
    [Backend] Feign
    아몬드맛빼빼로:
    Feign!Netflix에서 제공하는 API 클라이언트 라이브러리로 서버 단에서 외부 API 요청을 편리하게 하는 것이 목적인 라이브러리이다.특징선언형 인터페이스와 어노테이션만으로 REST API를 요청할 수 있다복잡한 코드 없이 메서드처럼 간단히 외부 API를 요청할 수 있다@FeignClient를 이용하여 Spring Cloud 환경에서 쉽게 서비스 간 통신이 가능하다Ribbon, Hystrix 등과 통합되 로드 밸런싱,장애 처리 등의 기능과도 동시 사용이 가능한다RestTemplate vs FeignGET http://localhost:8081/users/{id}이러한 URL로 HTTP 요청을 전송하는 코드를 RestTemplate과 Feign를 이용하여 구현했을때 각각 어떤 차이가 있는지 알아보겠..
    • 2025-03-26 10:41:54
  • 포스트글 썸네일 이미지
    [Backend] Grafana Loki
    아몬드맛빼빼로:
    Loki?Grafana Labs에서 개발한 로그 데이터 집계 시스템으로 Prometheus의 메트릭 수집과 유사하게 로그 데이터를 수집/저장하며 Grafana와 통합을 통하여 강력한 시각화와 분석을 제공한다.분산 시스템을 상정하고 설계되어 기본적으로 수평 확장이 가능하며 대규모 로그 데이터를 처리할 수 있다.효율적인 저장방식Loki는 로그 데이터 전체가 아니라 Metadata만 인덱싱하는 방식을 가져간다.이런 식으로 전체 데이터를 인덱싱하는게 아니라 일부분만 인덱싱하는 방식은 다른 솔루션보다 적은 저장 공간이 필요함을 의미한다. 또한,데이터를 라벨링하여 필요한 로그를 빠르게 찾을 수 있도록 정리한다.Loki의 동작Loki는 위해 만들어진 Promtail을 통하여 로그를 가져와 저장한다.Grafana에서 ..
    • 2025-03-06 17:21:22
조회된 결과가 없습니다.
[1][2]
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
목차
표시할 목차가 없습니다.
    • 안녕하세요
    • 감사해요
    • 잘있어요

    티스토리툴바