지난 20년간 웹 애플리케이션은 엄청난 성장을 이루어냈다. 수십억면의 사용자들이 웹 애플리케이션을 사용하고 있으며, 산업 그리고 부의 판도도 뒤집어 버렸다. 우리는 거의 Kakao, Naver, Twitter, Facebook, Google, Instagram 등의 서비스를 사용하고 있다. 이들 서비스는 동시에 수백만에서 수천만의 사용자가 사용하기 때문에 ...
아직 Kubenetes 환경을 구축하지 않았다면 문서를 참고해서 구축하자.쿠버네티스의 최소 배포단위는 POD이다. POD는 실질적인 프로세스이고, Service 형태로 외부에 노출된다. POD이 프로세스이므로 POD의 사양 즉 프로세스의 이름, 프로세스를 실행할 컨테이너 이미지이름, 사용할 포트등의 명세서가 필요하다. 또한 Pod의 복제본 수, 업데이트되는...
기술 저변을 확장하려면 개발자가 유입 되어야 한다. 그러기 위해서는 개발/테스트 환경이 잘 구성되어야 하는데, Kubenetes는 핫한 기술이기는 하지만 설치/운영이 쉽지 않다. K8s는 개념도 매우 복잡한데, 설치 하는 것 자체가 하나의 과업이다 보니 진입 문턱이 너무나 높다. 당장 클러스터를 구성해야 하는데, GCP나 AWS를 이용하려고 하면 비용이 문...
한 회사는 온 디맨드 EC2 인스턴스 및 MongoDB 데이터베이스의 Auto Scaling 그룹에 배포될 데이터 분석 애플리케이션을 AWS에 구축 할 계획이다. 데이터베이스는 소규모의 임의 I/O 작업을 수행하는 높은 처리량의 워크로드가 필요할 것으로 예상된다. 솔류션 아키텍트는 최적의 시스템을 구성해야 한다. 1. Provisioned IOPS SSD ...
Joinc 위키 문서로 복사했습니다. 이 내용을 클라우드 환경에 맞게 해석해서, 아키텍처 문서를 만드는게 최종 목표입니다.이 방법론은 Heroku의 개발자가 초안을 작성했으며, 2011년에 Adam Wiggins가 처음 발표했다.클라우드가 널리 사용 되면서 소프트웨어를 서비스 형태로 제공하는 SaaS(Software As A Service) 혹은 웹앱이라...
예전에는 소프트웨어 개발 프로세스가 간단(소프트웨어 개발이 단순했다는 의미가 아니다.)했다. 개발 환경과 프로덕션 환경간의
연동방식이나 워크플로우를 많이 필요로하지 않았다. 두 개의 환경이 연결되는 유일한 워크플로우는 수동배포 정도 였을 것이다
. 이 워크플로우에서는 시스템 관리자가 물리적 서버를 관리하고 배포 업무도 수행했다. 배포가 좀 복잡해지면서 ...
서비스 메쉬(Service Mesh)란 애플리케이션의 다양한 부분들이 서로 데이터를 공유하는 방식을 제어하는 방법이다. 서비스간 커뮤니케이션을 관리하는 다른 시스템과 달리, 서비스 메쉬는 애플리케이션에 구축된 전용 인프라 계층이다. 애플리케이션은 어떤 기능을 수행하기 위해서 다른 애플리케이션의 기능을 호출해야 하는 경우가 있다. 이커머스 애플리케이션에서 사...
아래 영상을 분석하려 한다.이 영상은 인터뷰 관점에서 시스템 설계를 다루고 있다. 요약해보자면 시스템 요구사항을 어떻게 수집할 것인가. 면접관과 어떻게 피드백을 주고 받을 것인가. 디자인을 구체화 해가는 방법 설계를 재검토하고 잠재적인 개선 사항을 제안하는 방법이다. 나는 인터뷰 관점이 아닌, 시스템 설계 관점에서 정리해보려 한다.요구사항을 수집하는 여러 ...
51 POSTS HERE
시스템 디자인 가이드
지난 20년간 웹 애플리케이션은 엄청난 성장을 이루어냈다. 수십억면의 사용자들이 웹 애플리케이션을 사용하고 있으며, 산업 그리고 부의 판도도 뒤집어 버렸다. 우리는 거의 Kakao, Naver, Twitter, Facebook, Google, Instagram 등의 서비스를 사용하고 있다. 이들 서비스는 동시에 수백만에서 수천만의 사용자가 사용하기 때문에 ...
가트너 선정 2023년 10대 전략 기술 트랜드 분석 - Digital immune system
디지털 면역 체계에서는 IT 시스템과 서비스를 생물학적 유기체계라고 본다. 생물학적 유기체계에서의 면역 시스템의 핵심은 생물체계가 자신을 위협하는 외부 요인들을 식별하고 제거하기 위해 자동적으로 작용하는 것이다....
Minikube 와 함께하는 Kubernetes Study 2 - deployments
아직 Kubenetes 환경을 구축하지 않았다면 문서를 참고해서 구축하자.쿠버네티스의 최소 배포단위는 POD이다. POD는 실질적인 프로세스이고, Service 형태로 외부에 노출된다. POD이 프로세스이므로 POD의 사양 즉 프로세스의 이름, 프로세스를 실행할 컨테이너 이미지이름, 사용할 포트등의 명세서가 필요하다. 또한 Pod의 복제본 수, 업데이트되는...
가트너 선정 2023년 10대 전략 기술 트랜드 분석 - 응용 관찰성
응용 관찰성(Applied Observability)는 제품 생산 시스템의 동작과 성능을 이해하기 위해서 다양한 도구와 기술을 사용하는 것을 의미한다. 기술적인 측면에서는 모니터링 메트릭의 수집, 로그의 저장과 분석, 추적을 할 수 있는 시스템을 구축하는 것이다....
Minikube 와 함께하는 Kubernetes Study 1 - Minikube 설치
기술 저변을 확장하려면 개발자가 유입 되어야 한다. 그러기 위해서는 개발/테스트 환경이 잘 구성되어야 하는데, Kubenetes는 핫한 기술이기는 하지만 설치/운영이 쉽지 않다. K8s는 개념도 매우 복잡한데, 설치 하는 것 자체가 하나의 과업이다 보니 진입 문턱이 너무나 높다. 당장 클러스터를 구성해야 하는데, GCP나 AWS를 이용하려고 하면 비용이 문...
AWS 솔류션 아키텍트 어소시에이트 등급 문제 풀이
한 회사는 온 디맨드 EC2 인스턴스 및 MongoDB 데이터베이스의 Auto Scaling 그룹에 배포될 데이터 분석 애플리케이션을 AWS에 구축 할 계획이다. 데이터베이스는 소규모의 임의 I/O 작업을 수행하는 높은 처리량의 워크로드가 필요할 것으로 예상된다. 솔류션 아키텍트는 최적의 시스템을 구성해야 한다. 1. Provisioned IOPS SSD ...
The Twelve Factors
Joinc 위키 문서로 복사했습니다. 이 내용을 클라우드 환경에 맞게 해석해서, 아키텍처 문서를 만드는게 최종 목표입니다.이 방법론은 Heroku의 개발자가 초안을 작성했으며, 2011년에 Adam Wiggins가 처음 발표했다.클라우드가 널리 사용 되면서 소프트웨어를 서비스 형태로 제공하는 SaaS(Software As A Service) 혹은 웹앱이라...
DevOps와 개발자
예전에는 소프트웨어 개발 프로세스가 간단(소프트웨어 개발이 단순했다는 의미가 아니다.)했다. 개발 환경과 프로덕션 환경간의 연동방식이나 워크플로우를 많이 필요로하지 않았다. 두 개의 환경이 연결되는 유일한 워크플로우는 수동배포 정도 였을 것이다 . 이 워크플로우에서는 시스템 관리자가 물리적 서버를 관리하고 배포 업무도 수행했다. 배포가 좀 복잡해지면서 ...
Linkerd로 구축하는 Kubernetes Service mesh
서비스 메쉬(Service Mesh)란 애플리케이션의 다양한 부분들이 서로 데이터를 공유하는 방식을 제어하는 방법이다. 서비스간 커뮤니케이션을 관리하는 다른 시스템과 달리, 서비스 메쉬는 애플리케이션에 구축된 전용 인프라 계층이다. 애플리케이션은 어떤 기능을 수행하기 위해서 다른 애플리케이션의 기능을 호출해야 하는 경우가 있다. 이커머스 애플리케이션에서 사...
Design Instagram
아래 영상을 분석하려 한다.이 영상은 인터뷰 관점에서 시스템 설계를 다루고 있다. 요약해보자면 시스템 요구사항을 어떻게 수집할 것인가. 면접관과 어떻게 피드백을 주고 받을 것인가. 디자인을 구체화 해가는 방법 설계를 재검토하고 잠재적인 개선 사항을 제안하는 방법이다. 나는 인터뷰 관점이 아닌, 시스템 설계 관점에서 정리해보려 한다.요구사항을 수집하는 여러 ...