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

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

Computer Science 2021.08.23 0

S3란 무엇인가?

이 글을 읽기 전에 앞서 안녕하세요. mayleaf입니다. 이번 글은 S3가 무엇인지, 왜 사용하는지, 사용하는 방법은 무엇인지에 대해서 간략하게 설명한 글입니다. 글의 순서는 S3의 정의, 사용하는 이유, 사용하는 방법 순으로 적혀있습니다. 감사합니다. S3란? S3는 Simple Storage Service 의 약자로 첫 글자에 S가 세 번 나타나기 때문에 S3라고 부릅니다. S3 는 인터넷용 저장소 서비스입니다. 각종 정적 파일들과 스크립트들을 저장하고 제공하는 용도로 사용합니다. 예를 들어서 이미지, 음원, 바이너리 패키지 같은 것들을 관리하는 데 사용합니다. 이 서비스는 웹 스케일에서 컴퓨팅을 쉽게 해주기 위해서 설계되었습니다. 예를 들어서 이미지 업로드가 가능한 서비스를 운영한다면, 이미지 저..

S3 2020.11.28 0

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

S3 관리 방법

이 글은 S3 관리 방법을 다룬 글입니다. S3는 데이터 저장소입니다. 여러 정적 데이터를 저장하고 사용자들에게 제공하기 위해서 사용됩니다. 저는 s3 버킷 생성, 버킷정책 관리, 버킷 마이그레이션, CloudFront 연동 등 S3와 관련된 기능을 써봤습니다. 그러면서 느낀 점이 두 가지가 있습니다. 첫 번째는 버킷 생성과 파일 업로드, 다운로드를 하는 것은 어렵지 않다는 점이었습니다. 두 번째는 자원을 효율적으로 관리하는 것이 중요하는 점이었습니다. 여러분은 자원을 어떻게 관리해야한다고 생각하십니까? 저는 정책을 통해서 관리해야한다고 생각합니다. S3자원을 관리하려면 생성할때 다음 세 가지 정책을 고려해야 합니다. 바로 명명 정책, 접근 정책, 비용 정책입니다. 명명 정책 버킷 이름은 명명 정책을 따..

S3 2020.05.23 0