전체 글

주로 개발에 대한 이야기들 Spring Kotlin k8s DB
MongoDB 안녕하세요~ 오늘은 Nosql DB 의 대표적으로 많이 활용되는 MongoDB 에 대해 알아볼게요 MongoDB 는 많은 분들이 아시다 싶이 json 기반으로 데이터를 저장합니다. json 이라는 데이터 형식 특성상, 필드 추가/삭제가 용이하기 때문에 그만큼 데이터를 저장하는데에 있어서 조금 더 유연한 측면을 제공하죠. 만일 여러분들이 맡은 프로젝트에서 서비스가 점점 발전하고, 요구사항이 지속적으로 추가/변경 된다면 대처에 용이하게 하기 위해 mongoDB 를 솔루션으로 채택해볼 수 있습니다. 만일 이러한 상황에서 RDB 를 채택하면, RDB 는 힘들게 정한 데이터 모델링으로 Table 을 설계하고, 설계한 틀을 벗어나기에는 어려운 단점들이 있습니다. 그래서 요구사항이 계속 바뀌고 빠르게..
들어가며 안녕하세요~! 오늘은 MSA 환경에서 추적을 용이하게 하기 위한, 라이브러리를 알아보도록 해볼텐데요. 과거에 Spring cloud sleuth 로 유명했었던 라이브러리 이지만, 아쉽게도 Spring Boot 2.x 버젼을 마지막으로 지원을 중단하고, Micrometer Tracing 로 옮기게 된 라이브러리입니다. https://github.com/spring-cloud/spring-cloud-sleuth GitHub - spring-cloud/spring-cloud-sleuth: Distributed tracing for spring cloud Distributed tracing for spring cloud. Contribute to spring-cloud/spring-cloud-sleut..
안녕하세요~ 오늘은 k8s 관련된 이야기로 돌아왔어요. 그동안 deployment 로 배포하는 방법과, 운영되는 pod 들에 대해 hpa 를 통해 auto scale 하는 방법들에 대해서 알아보았는데요 오늘은 조금 더 Node 의 자원 활용을 극대화할 수 있는 Topology spread constraint 에 대해 알아보도록 할게요. Topology spread constraint 를 적용하면 현재 운영중인 Node 에서 가용중인 Pod 의 개수를 원하는 대로 control 하거나 균등하거나 배포하는 방식을 보장할 수 있어요 한번 알아보러 가볼게요~! Topology spread constraint 먼저 Topology spread constraint 를 왜 사용해야 할까요? 예시를 통해 한번 알아보도..
들어가며 안녕하세요~! 오늘은 Spring 관련한 게시글로 찾아뵙게 되었네요 Spring 개발자라면 가장 많이 사용하게 되는 어노테이션인 Transactional 을 사용할 시 주의점에 대해 소개해드리고자 합니다 Spring Transactional Spring 에서는 PlatformTransactionManager 이라는 클래스가 Transaction 들을 관리해주는 역할을 가지고 있습니다. 작성한 코드가 정상적으로 가동한다면 큰 이상 없이 commit 을 하게 되고, 만일 예외가 발생하는 사항이 발생한다면 rollback 을 mark 하여 Transaction 을 commit 하지 않게 됩니다. 그럼 어떠한 매커니즘으로 Transaction 을 관리하게 될까요? @Transactional 어노테이션을..
안녕하세요~! 이전에 Coroutine 에 대한 기본 개념들을 알아보았죠이제 학습했던 Coroutine 기본 지식들을 기반으로 Spring Webflux 에 접목시킬 시간인데요.어떻게 Spring Webflux 에서는 Coroutine 을 접목시켰는지 코드를 보면서 연결 포인트들을 알아보려고 합니다. 혹시나 Coroutine 에 익숙하지 않거나 개념을 모르신다면 아래 게시글을 참조해주세요 ^-^https://huisam.tistory.com/entry/coroutine2 [Kotlin] Coroutine - 2. CoroutineScope & Context & Dispathcer 을 파헤쳐보자Coroutine 이전 시간에는 코루틴의 동작원리와 동시성 과 병렬성 의 차이에 대해 알아보았습니다. https:..
안녕하세요~! ㅎㅎ 오늘은 kotlin 에서 Annotation 에 대해 알아보도록 할게요. 개발을 진행하다보면 custom 한 validation annotation 을 만들거나, spring aop 혹은 여러 유틸들을 만들때 유용하게 사용되는데요. Java 와는 약간 다른 컨셉으로 kotlin 에서는 정의되어 있다보니, 하나씩 차근차근히 봐보도록해요. Annotation kotlin 의 어노테이션을 코드와 함께 살펴보도록 해봅시다. @Target( AnnotationTarget.FIELD, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.TYPE_PARAMETER, AnnotationTarget.P..
huisam
천천히 올바르게