Nginx 로드밸런싱 설정

이 글은 Nginx 로드밸런싱 방법을 적은 글입니다. 이 글에서 다루고자 하는 내용은 크게 두 가지로 첫 번째는 로드밸런서의 정체와 사용하는 이유이고, 두 번째는 Nginx를 로드밸런서로 운용하는 방법입니다. 로드밸런서의 정체 로드밸런서는 번역하면 부하 분산기입니다. 말 그대로 부하 분산을 위한 프로그램 혹은 하드웨어입니다. 로드밸런서의 역할은 가상의 주소를 향한 요청을 여러 서버에 분배하는 것입니다. 로드밸런서를 사용하는 이유 로드밸런서가 사용되는 이유를 크게 분류하면 두 가지가 있습니다. 첫 번째는 부하를 분산하여 하나의 서버의 부하를 조절할 수 있다는 점, 두 번째는 고가용성으로 두 개 이상의 서버를 운영하여 한쪽 서버가 장애가 생길 시 다른 쪽에서 해당 서비스를 운영할 수 있는 구성을 통해 운영 ..

Nginx 시리즈 2020.04.14 1

MSA에서 다른 서비스의 트랜잭션이 실패된다면 어떻게 해야할까?, Saga

이 글은 MSA 환경에서 다른 서비스의 트랜잭션 Fail으로 인한 보상로직을 작성하는 방법에 대해서 다루는 글입니다. 이 글을 쓰는 이유 최근에 MSA하다가 A 컴포턴트에서 트랜잭션을 마치고, B 컴포넌트에 이벤트를 던져두었더니, B 컴포넌트가 제대로 처리를 못하면 어떻게 해야하나라는 질문을 받았습니다. 그래서 해결책을 찾아보다가 이 해결책으로 Saga pattern을 알게 되었고, Saga pattern에 대해서 공유하고자 글을 씁니다. https://microservices.io/patterns/data/saga.html Microservices Pattern: Pattern: Saga Implement transactions using a saga, which is sequence of local ..

Web 2024.04.13 0

IR compiler란?

이 글을 쓰는 이유 코틀린 진영은 지금까지 멀티플랫폼을 노리고 있는 언어입니다. 여러 환경에서 돌아갈 수 있도록 하겠다는 것인데요. JVM뿐만 아니라, WASM, JS, Native Platform등에서 돌아갈 수 있는 언어를 만드려고 하고 있습니다. 하지만 대부분 사람들이 멀티플랫폼에서 돌리려고 하기보다는 JVM 원툴로 사용하고 있기 때문에 그리고 JVM에서 굴러가서 쓰는 사람들이 대부분이기 때문에 멀티플랫폼에 관련된 글을 적어서 이런 시도를 하고 있다! 라는 것을 알리고 싶었습니다. 그래서 IR 컴파일러가 뭔데? IR컴파일러는 Kotlin IR(intermediate representation, 중간표현)으로 컴파일을 해주는 친구입니다. 자바가 바이트코드로 바꾸고 이걸 jvm위에 올려서 굴리는 것처럼..

Kotlin 2024.01.04 0

어플리케이션 출시 전에 했던 일: 앱 출시 후기 2편

이 글은 어플리케이션 출시 전에 했던 일들을 적은 글입니다. 앱 출시 후기 1편 글을 쓰는 이유 이 글은 어플리케이션 개발을 해서 출시하시는 분들을 위해서 작성되었습니다. 지금 당장 기록하지 않으면 나중에는 까먹거나, 당연한 것으로 여기게 될 것 같아 출시를 하고 바 blog.mayleaf.dev 지난 번에 앱 출시 후기 1편을 적어서 냈는데, 그 글의 목차별로 글을 이제 작성해보려고 합니다. 오늘 쓰는 내용은 어플리케이션 출시 전에 해야했던 일들입니다. 어플리케이션 출시 전에 했던 일들 사전조사 우선 로또 리마인더를 구현하기 전에 앞서 리마인더 기능외에 어떤 기능들을 제공해주면 좋을까? 라는 생각을 했습니다. 그래서 앱스토어에 있는 로또 관련 어플리케이션들을 쭉 깔아보고 사용을 해봤습니다. 사용을 해보..

Flutter 2022.09.19 0

Service Locator Pattern, 서비스 로케이터 패턴

이 글은 서비스 로케이터 패턴에 대해서 다루는 글입니다. 이 글에서 다루고자 하는 내용은 세 가지로 첫 번째는 서비스 로케이터에 대한 소개와 예제코드를 이용한 설명이고, 두 번째는 의존성 주입을 예제 코드를 통해서 설명한 후 서비스 로케이터와 비교하는 것이고, 세 번째는 제가 서비스 로케이터를 사용하는 방법을 소개하는 것입니다. 서비스 로케이터 패턴(Service Locator Pattern)이란? Service Locator 패턴은 마틴 파울러가 블로그 글에서 제시한 패턴입니다. 이 패턴의 목표는 모듈화 수준을 높이는 것입니다. 클라이언트와 인터페이스사이의 의존성을 제거하는 방식으로 모듈화 수준을 높이는데요. 우리는 유연한 코드를 짜기 위해서 인터페이스를 자주 사용합니다. 그렇지만 인터페이스를 사용하다..

Computer Science 2021.08.23 0