일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Spring Data JPA
- 알고리즘
- Kafka
- 쿠버네티스
- VPC
- 개발
- 클라우드
- 스프링 부트
- Apache Kafka
- 머신러닝
- DFS
- 프로그래밍문제
- 카프카
- 코드업
- 로드밸런서
- Docker
- 클라우드 컴퓨팅
- aws
- gcp
- JPA
- Spring
- springboot
- 스프링부트
- 자료구조
- 스프링
- 오일러프로젝트
- Elasticsearch
- 백트래킹
- 백준
- Spring Boot
- Today
- Total
목록Infrastructure (24)
GW LABS

MySQL은 전 세계적으로 가장 많이 사용되는 오픈소스 데이터베이스 중 하나이며, 그 중심에는 InnoDB 스토리지 엔진이 있습니다. InnoDB는 단순히 데이터를 저장하는 엔진을 넘어, 성능, 안정성, 확장성 측면에서 MySQL을 지탱하는 핵심 요소입니다. 이번 글에서는 백엔드 개발자라면 반드시 이해해야 할 MySQL InnoDB의 특징과 성능 튜닝 포인트를 정리해 보겠습니다. InnoDB의 주요 특징1. 트랜잭션 지원 (ACID 보장)InnoDB는 ACID(Atomicity, Consistency, Isolation, Durability) 특성을 충실히 지원합니다.이는 금융 서비스나 전자상거래처럼 데이터 무결성이 중요한 시스템에서 필수적인 기능입니다.-- 트랜잭션 예제START TRANSACTION..
AWS DynamoDB Deep Dive: Key-Value DB와 NoSQL 모델링 완벽 이해서론AWS DynamoDB는 완전 관리형(fully managed) NoSQL 데이터베이스 서비스로, Key-Value 및 Document 모델을 지원하면서도 초당 수백만 건의 요청을 처리할 수 있는 확장성을 제공합니다.많은 기업이 DynamoDB를 선택하는 이유는 서버 관리 부담을 줄이고, 고성능 애플리케이션을 안정적으로 운영할 수 있기 때문입니다. 이번 글에서는 DynamoDB의 특징, 기본 사용법, 데이터 모델링 전략, 그리고 RDBMS와의 차이점을 심도 있게 다루겠습니다.본론1. DynamoDB의 주요 특징완전 관리형: 서버 인프라, 스케일링, 보안, 백업을 AWS가 관리Key-Value + Docume..

이번 포스팅에서는 Private Subnet에 위치한 서비스들을 외부에 오픈하는 방법에 대해 알아본다. 기본적인 구조는 Private Subnet에는 외부에 노출되지 않는 서비스들을 생성하고, Public Subnet에서는 로드밸런서를 두어서 로드밸런서로 들어온 트래픽을 Private Subnet으로 연결시키는 구조이다. 이번 포스팅에서는 EKS를 사용하여 진행했지만 EC2와 로드밸런서를 직접 생성해서 트래픽을 연결시키는 방법도 공부가 필요하다. 전체 아키텍처 이번 실습의 전체 아키텍처는 다음과 같다. 이전 포스팅에서 Private, Public 서브넷을 나눴다면, Public에 위치해야 할 자원들은 NAT와 로드밸런서이다. EKS와 같은 쿠버네티스를 사용한다면 로드밸런서를 쿠버네티스 서비스를 이용해 자..

이번 포스팅에서는 VPC의 엔드포인트와 배치 그룹에 대해 알아본다. 실습을 진행할 만한 큰 내용은 없는 것 같아 이론을 정리한 내용들을 포스팅하기로 결정했다. 이전 포스팅과 함께 알아두면 좋은 내용이고, VPC에 대한 사항은 대부분 파악한 것 같다. 앞으로는 외부로 서비스를 하기 위한 내용들을 집중적으로 공부해야겠다. VPC 엔드포인트 사용자가 생성한 VPC에서 프라이빗 서브넷에서도 AWS 퍼블릭 서비스와 프라이빗 네트워크 통신을 제공하는 프라이빗 엑세스 기능이다. VPC 엔드포인트는 두 종류가 있는데 엔드포인트와 엔드포인트 서비스로 나뉜다. 엔드포인트: AWS 퍼블릭 서비스에 대상으로 프라이빗 연결 게이트웨이 엔드포인트: AWS 퍼블릭 서비스 중 S3, DynamoDB 등에 대한 연결 인터페이스 엔드포..

개발자가 클라우드 컴퓨팅을 처음 배울 때 가장 어려운 점이 무엇일까? 내 경우에는 네트워크를 구성하는 부분이었다. 그 이유를 생각해보면 통상적인 업무에서는 개발 업무에 집중하고 인프라에 작업이 필요한 경우에는 인프라 담당자에게 요청하면서 개발을 진행했기 때문이다. 클라우드 컴퓨팅에서는 모든 컴퓨팅 리소스를 개발자가 다룰 수 있도록 구성되어 있기 때문에 네트워크부터 설계해야하는 상황이라면 공부가 꼭 필요하다. 이번 시리즈에서는 AWS를 통해 클라우드 컴퓨팅을 네트워크 관점으로 공부해보려고 한다. 그 중 가장 기본인 VPC부터 살펴보자. VPC(Virtual Private Cloud) 독립된 가상의 클라우드 네트워크 사용자가 직접 네트워크 오브젝트들을 생성하고 제어할 수 있음 VPC 특징 확장성: 클라우드 ..

프로젝트 운영을 하면서 자주 발생하는 변경사항에 따라 빌드, 테스트, 배포 하는 과정은 매우 지루하고 반복적인 업무이다. 운영업무에서 마주하게 되는 이런 불편한 점들을 해소시켜주기 위해 CI/CD 프로세스가 대두되었고, 지금에는 다양한 CI/CD 툴들이 필요에 따라 선택되고 있다. 이번 포스팅에서는 대표적인 CI 툴인 Jenkins를 알아보고 CI/CD 개념에 대해서도 정리해보자. CI/CD 지속적인 통합(Continuous Integration): 자동화된 빌드 및 테스트가 수행된 후, 개발자가 코드 변경 사항을 중앙 레포지토리에 정기적으로 병합하는 데브옵스 소프트웨어 개발 방식이다. 지속적인 전달(Continuous Delivery): 프로덕션에 릴리즈하기 위한 코드 변경이 자동으로 준비되는 소프트웨..

2020 하반기 구글 클라우드 스터디 잼이 종료되었다. 약 한달간 스터디 잼이 진행되었고 무사히 수료할 수 있었다. 처음 스터디잼에서 계획한 것처럼 많은 부분을 공부하진 못했지만, 규모확장성을 중심으로 클라우드 컴퓨팅에 대해 공부해볼 수 있어서 아주 좋은 경험이 되었다. 또 비용 걱정없이 GCP의 여러 서비스들을 사용해볼 수 있었던 점도 초보자에겐 정말 큰 혜택이라고 생각한다. 클라우드 컴퓨팅 환경에서 쿠버네티스를 사용하는 기초적인 방법을 정리할 수 있었던 점은 아주 큰 수확이라고 생각한다. 컨테이너 오케스트레이션의 필요성을 확인할 수 있었던 소중한 시간이었다. 또 전혀 관심을 갖고 있지 않았던 서버리스 컴퓨팅에 대해 새롭게 공부하면서, 실제 업무에서도 서버리스 아키텍처로 이전하게 되었을 때 얻을 수 있..

이번 포스팅은 GCP의 Cloud SQL에 대해 알아본다. 데이터베이스는 IT 서비스에서 핵심이라고 볼 수 있다. 다양한 비즈니스 로직들은 유실되어도 데이터만 있다면 복구할 수 있다. 비즈니스 로직을 다시 개발자가 만들면 된다. 힘든 일이지만 가능하다. 그러나 데이터가 유실된다면 데이터는 복구할 수가 없다. 전체 서비스는 이전에 사용자들이 생성한 데이터를 제공할 수 없고, 사용자들의 불만사항은 법적인 이슈로까지 갈 수 있을 것이다. 이렇게 중요한 데이터베이스 서비스를 GCP에서는 어떻게 제공하는지 알아보자. Cloud SQL Cloud SQL은 GCP에서 제공하고 있는 완전 관리형 데이터베이스 서비스이다. GCP에서는 Cloud SQL용 데이터베이스 엔진으로 MySQL, PostgreSQL, SQL Se..