스프링부트 3 버전 프로젝트를 진행하면서 예전처럼 RestTemplate을 활용해 외부 api를 호출했었습니다. 그런데 스프링 부트 3부터는 RestTemplate가 deprecated 된다는 얘기를 들은 적이 있었고 WebFlux의 등장 이후에는 WebClient 사용이 권장된다는 점도 알고 있었습니다. 하지만 토비 님의 유튜브 내용을 확인해 보니 RestTemplate가 삭제되는 것이 아닌 더 이상 새로운 기능이 추가되지 않고 버그 수정만 이루어지는 유지보수 모드라는 사실을 알게 되었습니다. 덕분에 흔히 생길 수 있는 오해와 진실을 바로 잡을 수 있었습니다. 어떤 방식으로 개발해야 할지 고민이 되었다. WebClient를 사용하려면 WebFlux 의존성을 추가해야 한다는 점이 부담스러웠고 비동기 환경..
쿠버네티스 정리쿠버네티스는 다수의 컨테이너를 효율적으로 배포, 확장, 관리하기 위한 시스템이다. 컨테이너화된 애플리케이션을 클러스터 환경에서 자동으로 배포하고 필요에 따라 확장과 축소하며 장애가 발생했을 때 복구까지 담당한다. 흔히 docker compose와 비교되지만 compose가 단일 서버 내 다수 컨테이너 관리에 초점을 둔다면 쿠버네티스는 여러 서버에 걸친 대규모 컨테이너 오케스트레이션을 지원한다. docker compose의 확장판으로 이해할 수 있지만 더 많은 기능을 제공한다. 주요 장점컨테이너 관리 자동화로 배포, 업데이트, 롤백을 자동 처리하고 다수의 파드로 들어온 요청을 균등하게 분배해 로드 밸런싱을 한다. 트래픽 상황에 따라 파드 개수를 자동으로 늘리거나 줄여 쉬운 스케일링이 있고 셀..
Redis는 무엇이며 장점은?레디스는 키-값 구조의 비정형 데이터를 저장하고 관리하는 비관계형 DB입니다. 인메모리에 모든 데이터를 저장하여 데이터의 처리 속도가 매우 빠른 장점이 있습니다. 디스크 보다 메모리가 데이터 처리 속도가 빠른데 RDBMS는 대부분 디스크에 데이터를 저장하고 레디스는 메모리(RAM)에 데이터를 저장합니다.Redis 주요 사용 사례캐싱, 세션관리, 메시지 큐, 실시간 채팅 및 메시징 등 내장된 기능이 많아서 사용하는 용도가 많습니다. 레디스 설명은 이 정도만 하고 레디스에서 제일 많이 사용되는 캐시 적용 및 레디스의 클러스터 구성에 대해서 설명하겠습니다.캐시, 캐싱이란?원본 저장소 보다 빠르게 가져올 수 있는 임시 데이터 저장소를 의미를 캐시라고 하고 임시 저장소에 접근해서 데이..
JPA 프로젝트에서 update는 어떤 방식으로 하는 게 좋을까?JPA 프로젝트를 하면서 가장 많이 쓰게 되는 기능 중 하나가 update입니다. 개발을 하다 "어떤 방식이 더 좋은 걸까" 하는 고민이 생겼습니다. 이글에서는 그 부분을 정리해보려고 합니다. 제가 고민하는 두 가지 방식1. JPA의 장점인 Dirty Checking(변경 감지) 활용해서 엔티티의 필드를 직접 수정하는 방법2. 새로운 객체를 만들어 교체하는 방법 두 가지 방법 모두 장단점이 있다고 GPT가 대답해 줍니다. 이번 글에서는 각각 어떤 특징이 있는지 그리고 실제로 언제 쓰면 좋을지 제 생각을 정리해 보겠습니다. 먼저 변경 감지를 활용해 필드를 직접 수정하는 방법입니다.@Transactionalpublic void updateDep..
- Total
- Today
- Yesterday
- bool
- for
- isdigit
- Python
- Lower
- function
- Upper
- Built-in Functions
- Lambda
- permutations
- combinations
- index
- If
- isalpha
- operators
- find
- Method
- counter
- zip
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |