3기_파피

3기_파피

우아한테크코스 3기 파피(김태완)입니다 :)

Incheon
10 posts
Website
함수형 인터페이스와 람다를 이용한 코드 중복 제거 cover image
#functional-interface

함수형 인터페이스와 람다를 이용한 코드 중복 제거

코드를 작성하다 보면 비슷한 로직의 중복 코드가 생길 수 있고, 그로 하여금 관리 지점이 늘어나기 때문에 대부분 리팩터링의 대상으로 취급한다. 이번 글에서는 함수형 인터페이스와 람다에 대해 알아보고, 이를 이용해 코드의 중복을 제거하는 방법을 다룰 …

로드 밸런싱에 대해 알아보자! cover image
#load-balancing

로드 밸런싱에 대해 알아보자!

인터넷의 발달로 인해 데이터 통신이 활발해졌고, 이는 트래픽의 폭발적인 증가로 이어졌다. 방금 누른 페이스북 ‘좋아요’와 친구에게 카톡으로 전송한 동영상, 좋아하는 유튜버의 채널 시청까지 어느 것 하나 인터넷을 통하지 않은 것이 없을 정도이다. 그 …

Scale-up과 Scale-out에 대해 알아보자! cover image
#scale-up

Scale-up과 Scale-out에 대해 알아보자!

서비스를 제작하고, 성공적으로 배포까지 마쳤다. 운 좋게도 점점 많은 유저가 유입되기 시작했고, 수많은 유저가 동시접속하는 서비스가 되었다. 기쁨도 잠시, 문제가 생겼다. 기존에 사용하던 서버가 한계에 도달했다. 인프라를 확장해야 할 필요성을 느끼게…

메시지 큐에 대해 알아보자! cover image
#message-queue

메시지 큐에 대해 알아보자!

메시지 큐란 메시지 큐(Message Queue)는 프로세스 또는 프로그램 간에 데이터를 교환할 때 사용하는 통신 방법 중에 하나로, 메시지 지향 미들웨어(Message Oriented Middleware:MOM)를 구현한 시스템을 의미한다. 메시지…

웹 소켓에 대해 알아보자! - 실전 편 cover image
#websocket

웹 소켓에 대해 알아보자! - 실전 편

웹 소켓에 대해 알아보자! - 실전 편 이번 글에서는 저번에 작성했던 웹 소켓 이론 편에 이어서, 스프링 환경에서 웹 소켓을 사용하는 법에 대해 다루려고 한다. STOMP 구현하기에 앞서, 우리는 새로운 프로토콜을 도입할 것이다. 바로 STOMP이다…

웹 소켓에 대해 알아보자! - 이론 편 cover image
#websocket

웹 소켓에 대해 알아보자! - 이론 편

웹 소켓에 대해 알아보자! - 이론 편 실시간 알림, 실시간 채팅 등 실시간이라는 키워드가 들어가는 기능들을 위해서는 대부분 웹 소켓 기술이 필요하다. 이 글에서는 다음과 같은 주제를 다룬다. 웹 소켓이 무엇인지 웹 소켓의 탄생 배경 웹 소켓의 동작…

ConstraintValidator를 이용한 커스텀 어노테이션 예외 처리 cover image
#validation

ConstraintValidator를 이용한 커스텀 어노테이션 예외 처리

를 이용한 커스텀 어노테이션 예외 처리 커스텀 어노테이션이란? 사용자 입력의 유효성을 보다 세부적으로 입력을 검증해야 할 때, 커스텀 어노테이션을 이용하여 예외 검증 로직을 생성할 수 있다. 이 때, hibernate에서 제공하는 Constraint…

Spring Boot 슬라이스 테스트 cover image
#test

Spring Boot 슬라이스 테스트

Spring Boot 슬라이스 테스트 슬라이스 테스트란? 레이어를 독립적으로 테스트하기 위해 라이브러리를 활용했는데, 코드 리뷰를 받으면서 슬라이스 테스트라는 용어를 알게 되었다. 말 그대로 레이어별로 잘라서, 레이어를 하나의 단위로 보는 단위 테…

방어적 복사와 Unmodifiable Collection cover image
#immutable

방어적 복사와 Unmodifiable Collection

방어적 복사 vs Unmodifiable Collection 불변 객체에 대해 공부할 때 자주 나오는 키워드들이다. 내부의 값을 안전하게 보장하기 위해 사용한다. 일급 컬렉션 를 예시로 들 것이다. 방어적 복사란? 생성자의 인자로 받은 객체의 복사…

Transactional 어노테이션 cover image
#spring

Transactional 어노테이션

@Transactional 스프링은 어노테이션을 이용한 선언적 트랜잭션 처리를 지원한다. 이번 글에서는 아래 내용에 대해 알아볼 것이다. 트랜잭션이 무엇인지 스프링에서 을 이용하여 트랜잭션 처리를 하는 방법 테스트 환경에서의 동작 트랜잭션(Tr…