목록All Contents (170)
Code&Data Insights
Load Balancer 비교: ALB와 NLB(1) ALB (Application Load Balancer): 특정 페이지의 성공적인 HTTP GET 뿐만 아니라 콘텐츠가 입력 매개변수를 기반으로 예상한 대로라는 확인을 기반으로 가용성을 결정애플리케이션 계층(7계층)에서 작동HTTP/HTTPS 요청 기반 라우팅 및 상태 확인 지원사용 사례: 웹 애플리케이션, REST API(2) NLB (Network Load Balancer)네트워크 계층(4계층)에서 작동TCP/UDP 트래픽 라우팅 및 낮은 지연 시간 제공.사용 사례: 고성능 애플리케이션, IoT 서비스애플리케이션의 가용성을 보장할 수 없음, 네트워크 및 TCP 계층 변수에만 의존하여 결정을 내리며 애플리케이션을 전혀 인식하지 못하기 때문NLB 는 ..
CloudFront: 콘텐츠 전송 네트워크(CDN)로, 전 세계 엣지 로케이션에서 콘텐츠를 캐싱하여 사용자에게 짧은 지연 시간과 빠른 전송 속도를 제공 주요 특징캐싱 가능한 콘텐츠(이미지, 동영상)와 동적 콘텐츠(API 가속, 동적 사이트 전달) 모두 성능을 향상.엣지 로케이션에서 콘텐츠에 액세스하는 사용자의 데이터 전송 및 요청에 대해서만 비용을 청구하므로 비용 효율적DDoS Protection과 통합 가능하여 보안 강화.사용 사례웹사이트 이미지 및 비디오 파일 캐싱글로벌 사용자를 위한 동적 콘텐츠의 빠른 제공: CloudFront → ALB → EC2/Lambda → 데이터베이스정적 콘텐츠 글로벌 캐싱: S3 + CloudFront AWS Global Accelerator: TCP/UDP 기반 애플리..
12월 부터 본격적으로 배우는 보안 과정에 앞서, 마지막 웹 개발 프로젝트..! 랜덤으로 팀이 배정되었고, 프론트엔드 파트 전반을 맡았다. 사실, 개인적으로 백엔드 파트를 맡고 싶었지만 팀내에 프론트 개발 경험을 가진 분이 한분도 없었고, 백엔드를 희망하셔서 프론트를 맡기로 했다. 정신없이 4~5일 동안 한 것 같은데, 여자저차 완성하고, 발표도 무사히 마쳤다 아쉬움은 있었어도, 그래도 실무에서 배운거 다시 복기해서 짧은 시간내에 해보니 재미있고 보람도 있었다..! 개발 시작 전에 Template 활용해서 figma 에서 직접 UI도 만들어보고, 백엔드 팀원분들과 협업을 위해, 스키마도 짜고, 필요한 API도 작성해 보았다. 신입으로 들어갔던 웹 개발 실무에선,그냥 세팅된 환경에서 코드 짜고, 기..
수업을 들으며 AWS SAA를 준비하는 스터디(러닝메이트)를 하고 있긴 하지만, 한주동안 공부한걸 공유하고, 복습하는 스터디에 들으면새롭게 배우는 다양한 주제에 대한 이해도가 높아질 것 같아서 기존 스터디 팀원 분들에게 양해를 구하고 들어가게 되었다! 프로젝트 때문에 정신 없었던 한주이지만, 웹 보안에서 핵심적인 개념들이기에 정리하고 공유하면 좋겠다는 생각으로 이 주제를 선정했다. 프로젝트 하면서도 많이 접하는 개념들이라 퀴즈로 복기하면 좋을 것 같다는 생각에 퀴즈도 넣고, 세션과 쿠키의 작동방식이 잘 이해되지 않아 추가적으로 더 정리해 보았다. => 예시) Instagram에서 다중 로그인한 다른 기기 강제 로그아웃, Netflix에서 요금제별로 프로필 부여(다중 접속 가능한 유저수 제한)=> 세..
Amazon Cognito사용자 인증, 소셜 로그인 및 제3자 인증 제공 AWS Organizations여러 AWS 계정을 중앙에서 관리하고 통합 청구를 제공계정 수준의 관리와 정책 설정에 초점 AWS Network Firewall: VPC 내에서 트래픽 필터링 및 방화벽 기능을 제공하는 관리형 방화벽 서비스 - VPC 내 방화벽 관리: EC2, Lambda, RDS 등과 같은 AWS 리소스에 대한 트래픽을 필터링하여 외부 위협으로부터 보호- 세부적인 방화벽 규칙을 설정하여 VPC 내부의 트래픽을 제어하고, 다양한 필터링 옵션(패킷 검사, 흐름 기반 규칙 등)을 제공 AWS Firewall Manager: 여러 AWS 계정, 리전, VPC에서 방화벽 설정을 중앙에서 관리할 수 있는 서비스 - 중앙 집중식..
MPA vs SPAMPA (Multi-Page Application): 웹사이트의 각 페이지가 별도로 존재하며, 사용자가 페이지 간 이동할 때마다 새로운 HTML 페이지를 서버에서 불러오는 방식 장점 1) SEO 친화적: 페이지별 URL 구조가 명확해 검색 엔진이 페이지를 쉽게 크롤링할 수 있어 SEO(검색 엔진 최적화)에 유리 단점1) 느린 페이지 전환: 페이지를 이동할 때마다 전체 페이지를 새로 불러오기 때문에 전환이 느림2) 서버 의존성 높음: 자주 서버와 통신해야 하므로 서버 부하가 큼 SPA (Single-Page Application): 하나의 HTML 페이지를 처음에 로드한 뒤, 페이지 이동이나 추가 데이터가 필요할 때 자바스크립트를 이용해 서버와 소통하여 필요한 부분만 업데이트하는 방식 ..
업무를 하며, 중간중간 react와 JS 문법에 대해 배우며 블로그에 기술한 내용들이 있지만, 수업을 들으며 내가 생각하기에 꼭 알아야할 필수지식 위주로 정리하였다.1. 호이스팅 (Hoisting): 변수, 함수, 또는 클래스의 선언이 해당 코드의 최상단으로 "끌어올려진 것처럼" 동작하는 JavaScript의 특징 1) let 또는 const 호이스팅변수 선언이 호이스팅되고, 초기화가 선언문에 도달하기 전까지 이루어지지 않음 초기화 전까지의 변수는 TDZ(Temporal Dead Zone)에 높이게 됨=> Reference Error=> let -> hoisting이 일어나지 않음 (var는 호이스팅의 문제가 일어남) 2) 함수 호이스팅 함수 선언은 전체 스코프에서 접근할 수 있도록 호이스팅됨 =>..
일주일 간의 AWS 기초 이론 수업이 끝나고 처음 모듈 프로젝트를 진행하고 끝냈다 어떤 프로젝트를 할까 팀원분들과 고심했는데,AWS 서비스를 구현해보는 걸 중점으로 WordPress를 활용하여 블로그페이지를 구현하기로 했다 EC2 인스턴스로 구현하는 팀과 serverless 아키텍처로 구현하는 팀으로 나뉘었는데, 나는 serverless 팀에서 구현했다. 우리 팀은 웹사이트 제작 업체라는 테마로, 처음 s3로 호스팅한 static website를 lambda로 마이그레이션,severless로 구현된 웹사이트를 다시 EC2로 마이그레이션 한다는 시나리오 였다. AWS 서비스를 구현하기 전에 팀원 분이랑 상의하며, 아키텍처를 짜보기도 했다. - dynamic 웹 호스팅의 경우에는 API Gateway..