분류 전체보기 90

[AWS]데이터베이스 (2)

1편https://jjongsk.tistory.com/entry/AWS%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-1 [AWS]데이터베이스 (1)관계형 데이터베이스관계형 데이터베이스는 최소 하나 이상의 테이블을 지닌다. 테이블은 열(col)과 행(row)으로 구성되며, 열은 속성(attribute), 행은 레코드(record) 또는 튜플(tuple)로 불린다. 각 열jjongsk.tistory.com  읽기 전용 복제본데이터베이스 인스턴스가 성능을 만족시키지 못할 때, 수직적 확장과 수평적 확장 옵션을 통해 성능을 개선할 수 있다.수직적 확장데이터베이스 운영 중 메모리, 컴퓨터 성능, 네트워크 속도, 디스크 처리용량 등의 문제가 발생하면, 데이터베이스..

aws 2024.07.18

[AWS]데이터베이스 (1)

관계형 데이터베이스관계형 데이터베이스는 최소 하나 이상의 테이블을 지닌다. 테이블은 열(col)과 행(row)으로 구성되며, 열은 속성(attribute), 행은 레코드(record) 또는 튜플(tuple)로 불린다. 각 열의 데이터는 미리 정의된 타입과 일치해야 하며, 이는 데이터 조회와 쿼리 작업을 유연하게 하는 장점이 있다. 또한 테이블 생성 후 필요에 따라 열을 추가하거나 삭제할 수 있다. 삭제 시에는 해당 열의 모든 데이터가 함께 삭제된다. 구조화 질의어 (SQL)사용자는 SQL(Structured Query Language)을 사용하여 데이터 저장, 조회, 유지 보수 작업을 수행한다. 이로 인해 관계형 DB를 SQL DB라고도 부른다. 문법은 각 RDBMS마다 다를 수 있다.데이터 조회SELE..

aws 2024.07.16

[AWS]VPC (2)

1편 링크https://jjongsk.tistory.com/entry/AWSVPC-1 [AWS]VPC (1)Amazon VPC 개요Amazon Virtual Private Cloud (VPC)는 AWS 클라우드에서 논리적으로 격리된 네트워크를 생성할 수 있도록 지원하는 서비스이다. VPC는 네트워크 계층에서 EC2 인스턴스와 기타 AWS 리소스를 포jjongsk.tistory.com 네트워크 주소 변환ENI와 퍼블릭 IP 주소를 연결한 뒤에도 ENI는 여전히 private IP 주소를 유지하며 새로운 설정이 필요 없다. 대신 NAT(Network Address Translation) 과정을 통해 인터넷 게이트웨이가 퍼블릭 IP 주소를 ENI의 private IP 주소로 매핑한다.NAT 디바이스네트워크 주..

aws 2024.07.13

[AWS]VPC (1)

Amazon VPC 개요Amazon Virtual Private Cloud (VPC)는 AWS 클라우드에서 논리적으로 격리된 네트워크를 생성할 수 있도록 지원하는 서비스이다. VPC는 네트워크 계층에서 EC2 인스턴스와 기타 AWS 리소스를 포함할 수 있게 도와준다. VPC는 단일 AWS 리전 내에서만 존재할 수 있으며, 네트워크 하드웨어를 사용하지 않고 소프트웨어 기능을 통해 라우터, 스위치, VLAN 등을 추상화하여 제공한다. VPC CIDR 블록CIDR 블록은 VPC 내의 인스턴스 및 리소스에 할당되는 IP 주소를 결정한다.AWS에서 사용 가능한 CIDR 범위10.0.0.0 ~ 10.255.255.255 (10.0.0.0/8)172.16.0.0 ~ 172.31.255.255 (172.16.0.0/1..

aws 2024.07.09

트랜잭션과 고립(격리)수준

트랜잭션이란 무엇인가?DBMS에서 데이터를 다루는 논리적인 작업의 단위트랜잭션의 필요성데이터 복구: 데이터베이스 작업 도중 장애가 발생하면 데이터를 복구하기 위한 단위작업 분리: 여러 작업이 동시에 같은 데이터를 다룰 때 발생할 수 있는 문제를 방지하기 위해 작업을 분리하는 단위예시 (ACID)1. A에서 B계좌로 돈을 입금할 때 → B계좌의 입금 관련 쓰기 작업에 실패 시[Atomicity(원자성)]트랜잭션이 제대로 되어있지 않다면 A계좌에서 출금한 돈은 없어지게 되어버리며 하나의 트랜잭션이서 두 개의 작업을 실행하고 있을 때 하나의 작업이라도 실패 시 모든 작업이 실패로 돌아가야 함 → 기존 데이터로 롤백 시키는 작업을 해야함2. 잔액이 1000원 밖에 없는 A계좌에서 B,C 계좌로 동시에 1000원..

database 2024.07.07

기존 빌더와의 호환성 검증을 위한 통합 테스트코드 작성

개요최근 레포지토리가 점점 커지면서 파일의 증가로 인해 전체 빌드 시 간간히 메모리 초과 문제가 발생하여, 빌드 시스템을 리팩토링하는 작업을 진행하였다. 이 빌더는 약 150명의 개발자가 사용하는 회사 전체 프로젝트 배포에 사용되므로, 기존 빌더와의 완벽한 호환성을 유지하는 것이 1순위 목표였고 개발 자체는 후순위였다. 따라서, 테스트 코드를 통해 기존 빌더와의 동기화 유무를 확실하게 잡고 개발을 시작하기로 하였다. 빌더는 내부에서 child_process를 사용하여 멀티 프로세서 환경에서 tsc를 사용한 컴파일과 rollup을 사용한 번들링 과정을 거쳐 빌드 파일을 생성하는 방식으로 동작하고 있었다. 단위 테스트보다는 결과 파일이 동일한지를 확인하는 것이 중요했기 때문에 빌더를 실행 시킨 뒤 최종 결과..

etc 2024.07.03

[AWS]스토리지 (2)

1편 링크https://jjongsk.tistory.com/entry/AWS-%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%A7%801  S3 객체에 접근하기접근 제어ACL과 S3 버킷 정책, IAM 정책을 통해 접근 권한을 세부적으로 설정할 수 있다. Amazon은 ACL 대신 S3 버킷 정책과 IAM 정책 사용을 권장한다.S3 버킷 정책: JSON 포맷으로 작성되어 다수의 외부 계정, 유저가 하나의 S3 버킷에 접근할 수 있는 규칙을 생성할 수 있다.IAM 정책: IAM 기반 계정 레벨 접근 제어를 위해 사용된다.Presigned URL: 일시적으로 private 객체에 접근을 허용하고자 할 때 사용한다. 기본 유효 시간은 3600초이며 설정 가능하다. 요청 시 접근 권한에 필요한 문자열을 ..

aws 2024.07.01

[AWS]스토리지(1)

S3 개요AWS S3(Simple Storage Service)는 다양한 용도로 활용 가능한 객체 스토리지 서비스이다. 아카이브, 로그 파일, 재난 복구 이미지 등의 백업 관리는 물론, 저장된 빅데이터의 분석 작업에도 활용할 수 있다. 또한, 정적 웹사이트 호스팅에도 사용할 수 있다.객체 스토리지와 블록 스토리지의 차이블록 스토리지: NTFS, Btrfs, ext4와 같은 파일 시스템을 위해 물리적 저장 장치를 블록 단위로 나누는 저장 방식이다. EC2 인스턴스의 OS 볼륨은 블록 스토리지에 속한다.객체 스토리지: 어떤 형식의 데이터든 저장할 수 있는 공간으로, 복잡한 규칙 없이 누구나 접속하여 어떤 데이터든 어떤 용량이든 저장할 수 있다. S3는 객체 스토리지이다. S3 서비스 아키텍처버킷 생성: 기본..

aws 2024.06.28

[AWS]Compute Service(2)

1편 https://jjongsk.tistory.com/entry/AWSCompute-Service1 EC2 Auto ScalingEC2 Auto Scaling은 애플리케이션 실패 및 복구 상황을 방지하기 위해 사용자가 미리 지정한 수 만큼의 EC2 인스턴스를 자동으로 프로비저닝하고 시작하는 서비스이다.환경 설정Auto Scaling은 인스턴스 설정 내용을 복사하여 사용하며, 필요에 따라 수정할 수 있다. 환경 설정만으로는 직접 인스턴스를 시작할 수 없으며, Auto Scaling에서만 사용할 수 있다. 생성된 환경 설정은 수정이 불가능하며, 새로운 설정을 생성해야 한다.템플릿환경 설정과 유사하지만, 템플릿은 더 직관적이고 이해하기 쉽다.Auto Scaling 그룹Auto Scaling 그룹은 Auto ..

aws 2024.06.23

[AWS]Compute Service(1)

인스턴스 환경설정리전리전은 AWS 서버가 물리적으로 존재하는 위치이다. 사용자는 자신의 필요에 맞게 리전을 선택할 수 있다. 예를 들어, 서비스의 주요 사용자 기반이 있는 지역에 가까운 리전을 선택하면 지연 시간을 최소화할 수 있다.VPC (Virtual Private Cloud)VPC는 AWS에서 네트워크를 생성하고 관리하는 도구이다. VPC를 사용하면 인스턴스를 다른 환경과 쉽게 격리시킬 수 있어 보안과 네트워크 관리를 효과적으로 수행할 수 있다.TenancyEC2 인스턴스를 시작할 때 Tenancy 모델을 선택할 수 있다. 기본 설정은 공유 Tenancy로, 이는 인스턴스가 다른 인스턴스와 동일한 물리적 서버에서 실행됨을 의미한다. 전용 인스턴스 서버를 사용하면 물리적으로 인스턴스를 격리할 수 있지..

aws 2024.06.20