Latest

외부 인프라스트럭처 테스트

외부 인프라스트럭처 테스트

해당 코드는 Github에서 확인할 수 있습니다. 대부분의 애플리케이션은 외부 인프라스트럭처와 통신하면서 진행됩니다. 대표적인 외부 스트럭처는 외부 API들이 있습니다. 이런 외부 인프라스트럭처는 Mocking 해서 원하는 응답 값을 지정하고 검증하고 싶은 부분을 검증을 진행하는 것이 흔한 패턴입니다. 대표적으로 Mockito 프레임워크가 있으며 Mock 테스트는 Spring Guide - 테스트 전략 : Service 테스트, RestTemplate Mock 기반

By Yun
커머스 코드 자산화 개발일지 - 6 결제 대행 서비스를 테스트 대역으로

커머스 코드 자산화 개발일지 - 6 결제 대행 서비스를 테스트 대역으로

지난 글에서 오퍼를 장바구니에 담았다. 이제는 결제다. 대부분의 온라인 상점에서 결제는 전자 지급 결제 대행 서비스Payment Gateway[1](이하 결제 대행 서비스, PG)와 연동하는 것을 의미한다. 온라인 상점이 결제를 위해 다양한 카드사나 은행과 직접 계약을 하고 각각의 시스템을 연동하는 것은 매우 비효율적인 작업이다. 결제 대행 서비스는 다양한 결제사와의 인터페이스

By 유 영모
[좌충우돌 개발기] API 함수 이름은 어떻게 짓는게 좋을까?

[좌충우돌 개발기] API 함수 이름은 어떻게 짓는게 좋을까?

개발자들은 API를 작성할 때, 함수 이름 짓기에 관하여 얼마나 공을 들일까요? 구글링을 하다 발견한 브런치 페이지에서는 절반정도의 개발자가 이름 짓기를 힘겨워 한다고 합니다. 좋은 API 함수 이름 짓기에 대한 명확한 기준도 없고.., 주어진 일정 기간내에 코드작성을 완료 해야 하는데 좋은 이름은 떠오르질 않고 시간만 흐르고 진도는 안나가고… 개발자라면 이런 문제에

By devarchi33
proxy 뒤에서 docker의 wordpress, https 적용

proxy 뒤에서 docker의 wordpress, https 적용

이번 글은 Nginx proxy 뒤에 다시 Docker 실행된 wordpress에 https 를 적용하면서 겪었던 문제 및 해결 방법을 공유한 글입니다. 이런 구성을 말로만 설명하려니 조금 복잡한데 아래 글에 있는 구성에서 이 서버에 홈페이지를 추가 하기 위해 wordpress docker container를 실행했습니다. * 커머스 코드 자산화 개발일지 - 4 출시 실제 구성은 다음과 같이 됩니다.

By 김형준
Java, Go 성능 테스트 비교 글을 보고

Java, Go 성능 테스트 비교 글을 보고

필자가 주로 사용하는  개발 언어는 자바입니다. 실제로 여러 프로젝트에서 성능 튜닝 관련 업무를 수행하였습니다. 최근 몆년 동안에는 일반적인 API 서버 개발 시에는 주로 Go 언어를 사용하고 있습니다. 이유는 간단함과 Docker 패키징하기 쉽고, 부족한 서버 예산으로 메모리, CPU 를 작게 사용하는 언어라고 봤기 때문입니다. 간단하고, 쉬운 Docker 패키징 등은 개발자의 경험으로

By 김형준
Ktor로 Todo 서비스 빠르게 만들기

Ktor로 Todo 서비스 빠르게 만들기

개요 최근 가장 성장하고 있는 언어인 코틀린에 대해 관심이 있으시다면 Ktor에 대해서도 들어보셨을 거라 생각합니다.  오늘 소개해드릴 Ktor (Kay-tor로 발음)는 코틀린과 마찬가지로 JetBrains에서 개발된 프레임워크 로써 멀티 플랫폼에 대한 지원을 목적으로 개발되었습니다. Ktor를 사용하면 코루틴 기반의 비동기 서버와 HTTP 클라이언트 모두 개발이 가능합니다. 오늘은 Ktor를 이용하여 간단한 Todo

By 이상훈
커머스 코드 자산화 개발일지 - 5 장바구니(부제. 다중 저장소 지속성 입문)

커머스 코드 자산화 개발일지 - 5 장바구니(부제. 다중 저장소 지속성 입문)

지금까지 고객이 구매할 수 있는 오퍼Offering를 만들고[1] 쇼핑몰에 노출하였다.[2] 그다음으로 해야 할 일은 오퍼를 장바구니에 담는 것이다. ShoppingCartService는 마이크로서비스 모듈로서 장바구니를 책임진다. Mall은 ShoppingCartService의 API를 이용하여 오퍼를 장바구니에 담는다. 불변성과 의존성 장바구니는 여러 개의 장바구니 아이템을 담을 수 있다. 여기서 오퍼라 하지 않고 ‘장바구니 아이템’이라고 부른 이유는

By 유 영모
고 모듈과 함께 비공개 외부 저장소를 사용하는 방법

고 모듈과 함께 비공개 외부 저장소를 사용하는 방법

※ 고 언어 1.13 버전을 기준으로 설명합니다. 고 모듈을 사용하여 패키지 구성 방법 개선하기에서 로컬 모듈[1]을 사용하는 방법도 소개했습니다. 로컬 파일 시스템에 있는 모듈을 바로 사용하는 방법으로 조직 내에서만 사용되는 비공개 모듈에 적용할 수 있습니다. 그런데 이전 글에서 로컬 모듈에 대해 버전을 명시할 수 있는 것처럼 소개했는데 알고보니

By cp949
커머스 코드 자산화 개발일지 - 4 출시

커머스 코드 자산화 개발일지 - 4 출시

소프트웨어를 배포할 때 비로소 가치는 생겨납니다. - The Nature of Software Development, 26 쪽 소프트웨어는 사용자를 만날 때 진정한 가치가 생긴다. 내가 만든 소프트웨어가 사용자를 만날 수 있도록 서버에 배포해보자. 지금까지 세 개의 모듈을 만들었다. * product-service : 상품 API를 제공하는 서비스 * product-admin : 상품 관리자 서비스 * mall : 사용자 쇼핑몰 모듈을 각기

By 유 영모
커머스 코드 자산화 개발 일지-3 오퍼를 쇼핑몰에

커머스 코드 자산화 개발 일지-3 오퍼를 쇼핑몰에

지난 이야기 지난 글에서는 상품을 유연하게 다루기 위한 시도로 오퍼Offering 개념을 구현하였다. 개발 주기 목표 오퍼는 존재만으로는 가치가 없다. 고객이 보고 구매함으로써 비로소 가치가 생긴다. 그래서 이번 개발 주기의 목표는 고객이 방문할 수 있는 쇼핑몰(이하 Mall)을 만들고 오퍼를 노출하는 것으로 정했다. Mall은 별도로 존재하는 웹 애플리케이션으로 고객이 상품을

By 유 영모
이벤트 주도 아키텍처는 어떤 이점을 주는가?

이벤트 주도 아키텍처는 어떤 이점을 주는가?

미완의 글인데... 코로나19로 중국에 가지 못해서 쓰다만 글을 그냥 노출합니다. ㅡㅡ^   페친이 공유한 기사는 보자마자 좋은 글이란 느낌이 왔다. 그래서, 읽어 보려고 클릭 했는데, 기사 앞부분에서 만난 문구부터 알듯 모를듯 해서 진도가 안 나갔다. 이 아키텍처를 이용하면 룰 기반 서비스를 해체하고 이벤트에 기반해 데이터를 공유하는 마이크로서비스를 만들 수 있다. 룰

By 안영회