Game과 Token economy

블록체인 기술은 Web 3.0이라고 부르는 차세대 인터넷의 원동력으로 설명하고는 한다. 중계자 없이 토큰으로 이루어진 경제 시스템을 블록체인 위에 구축할 수 있다는 설명이다. 경제 시스템의 연료는 화폐인데 이 화폐는 그다지 믿음직스럽지 못한 국가가 관리하고 있다. 특히 오늘날의 화폐는 기본적으로 모두 신용화폐인데, 신용을 제공하는 국가를 믿지 못하겠...

Kubernetes Ingress

이 문서는 Kubernetes Ingress를 다룬다. NodePort와 LoadBalance는 참고 목적으로 다룰 것이다. 우분투리눅스 20.4 minikube로컬에 구축되는 minikube는 실제 클러스터를 구축하는게 아니기 때문에 CluseterIP를 외부에 노출 할 수 없다. minikube tunnel 을 실행 하자.# minikube tunn...

Uber System Design 분석

Uber System Design. Design Ride-Hailing Application 영상에 대한 분석이다. 영상내용을 기반으로 좀 더 깊이 들어가보려 한다. 1. Uber의 Ride-Haling Application을 개발하기 위한 요구사항 분석 1. 하이레벨에서 컴포넌트 다이어그램 작성 1. 각 컴포넌트의 시퀀스 다이어그램 작성 1. 잠재적인 ...

Headless ECommerce

헤드리스 이커머스를 다루기 전에 헤드리스 아키텍처(Headless architcture)를 살펴봐야 할 것 같다.헤드리스 아키텍처라고 하면 낯설게 들리겠지만, 오래전에 존재해왔다. 헤드리스 아키텍처라는 것은 모든 비지니스 로직과 기능을 API 세트로 만들어서 제공하는 것을 의미한다. 이 API는 전문화된 백앤드 서버에스 구동되며, 고객이 원하는 모든 경험을...

견고하고 확장가능한 Go 애플리케이션 구축 방법

Go 언어를 이용해서 백앤드 애플리케이션을 개발한다. 이 애플리케이션은 유저정보를 저장하고, 조회하는 2개의 REST API를 제공한다. 이 애플리케이션을 구조적으로 견고하고 확장가능한 형태로 만들어보려 한다. 아이디어는 에서 가져왔다. 이 문서에서는 클린 아키텍처의 제약 조건을 아래와 같이 설정하고 있다. 1. 프레임워크와 무관하다. 아키텍처는 특정 소...

AWS에서의 중앙 집중식 로깅 시스템 구축

클라우드 시스템은 위임이다. 컴퓨팅, 메모리, 디스크와 같은 하드웨어 외에도 로드밸런서, 메시지큐, 로깅, 모니터링, 배포, 확장, 데이터 수집 등을 IaaS, PaaS, SaaS 형태로 비즈니스로직으로 부터 분리하여 위임하는 시스템이다. 따라서 개발조직은 다른 것들에 신경쓰지 않고 서비스 개발에만 집중 할 수 있다. 클라우드에 대한 다양한 관점이 있겠는데...

AWS 기반 Billing 서비스 아키텍처 - ServerLess

joinc는 AWS를 이용해서 도매 상품 중개/판매 서비스를 운영하고 있다. 초기 쇼핑몰을 빠르게 전개하는데 중점을 뒀기 때문에 백오피스에 기술부채를 가지고 있다. CTO는 기술 부채를 없애기를 원한다. CTO는 솔류션 아키텍트에게 빌링 시스템의 개선을 요구했다. 주요 요구 사항은 아래와 같다. 1. 비용 효율적이어야 한다. 1. 운영 인력이 충분하지 않...

Design Instagram

아래 영상을 분석하려 한다.이 영상은 인터뷰 관점에서 시스템 설계를 다루고 있다. 요약해보자면 시스템 요구사항을 어떻게 수집할 것인가. 면접관과 어떻게 피드백을 주고 받을 것인가. 디자인을 구체화 해가는 방법 설계를 재검토하고 잠재적인 개선 사항을 제안하는 방법이다. 나는 인터뷰 관점이 아닌, 시스템 설계 관점에서 정리해보려 한다.요구사항을 수집하는 여러 ...

Security on AWS

가트너는 글로벌 클라우드 시장이 매년 15% 이상 성장을하여 2021년에는 3025억 달러의 시장을 형성할 것으로 예측하고 있다.이제 퍼블릭 클라우드는 전통적인 인터넷 서비스 영역 뿐만 아니라 금융/보험/제조 영역으로 확대되고 있다. 국내의 경우에도 금융권의 클라우드 서비스 활성화를 위해서 2018년 7.13일 금융분야 클라우드 이용 확대방안을 제시한다. ...

Go Project structure Best Practices

원문 Go 애플리케이션의 구조는 다소 논쟁적인 주제가 될 수 있다. Go 애플리케이션에 대한 구조는 에 잘 정의되어 있다. 어떤 개발자는 참고하는 정도로 이용하지만 어떤 개발자는 반드시 이 구조를 따라야 한다고 주장하기도 한다. 내 입장은 "소프트웨어에서의 규칙은 가능하면 지키려고 하되 얽매일 필요는 없다"이다. 위 문서는 좋은 내용을 담고 있지만 이 도입...