본문 바로가기

분류 전체보기110

[Basic Web Application 구축하기(4)] - 데이터 테이블 생성, DynamoDB, IAM Amazon DynamoDBkey-value 데이터베이스 서비스이므로 데이터의 스키마를 생성할 필요가 없다.IAM을 사용해 서비스가 서로 상호 작용하는 데 필요한 권한을 안전하게 부여한다.이전 과정에서 작성한 lambda함수가 생성된 DynamoDB 테이블에 데이터를 쓸 수 있도록 IAM 정책을 통해 허용한다. DynamoDB 테이블 생성DynamoDB 콘솔 테이블 생성 및 세부 정보 작성테이블 이름과 파티션 키만 작성하고 테이블을 생성한다.파티션 키는 테이블의 Primary Key이다. 추가 정보의 ARN은 나중에 필요하므로 복사해놓는다. IAM 정책을 생성하여 Lambda 함수에 추가이제 데이터를 저장할 수 있는 테이블이 생겼으니 Lambda함수를 편집하여 데이터를.. 2023. 11. 16.
[Basic Web Application 구축하기(3)] - 웹 앱에서 서버리스 함수 연결 목표Amazon API Gateway를 사용해 웹 클라이언트에서 Lambda 함수를 직접적으로 호출할 수 있는 RESTful API를 생성하자. API Gateway는 Basic Web Application 구축하기(1)에서 생성한 HTML 클라이언트와 Basic Web Application 구축하기(2)에서 생성한 서버리스 백엔드 사이의 중간 계층 역할을 한다. 새 REST API 생성API Gateway 콘솔 REST API 구축 API 세부 정보 작성API 이름 작성엔드포인트 유형 : 엣지 최적화 (엣지 최적화는 지리적으로 분산된 클라이언트에 가장 적합함) 새 리소스 및 메서드 생성메서드 생성 클릭 메서드 세부 정보 입력원하는 메서드 유형을 선택하고, 통합 유형.. 2023. 11. 16.
[Basic Web Application 구축하기(2)] - AWS Lambda 함수 생성 Lambda 함수 생성 및 구성AWS Lambda란?Lambda는 서버리스 함수를 생성할 수 있는 컴퓨팅 서비스이므로 소프트웨어와 하드웨어를 관리할 필요가 없다.서버리스 함수는 코드에서 정의하는 특정 이벤트에 따라 트리거 -> 처리하는 이벤트 수에 대해서만 요금 부과 AWS Lambda 콘솔 접속유의할 점은 Amplify에서 앱을 생성한 리전과 동일한 리전에서 함수를 생성해야 한다.함수 생성 클릭 함수 생성함수 이름을 작성하고 런타임은 작성할 언어에 맞는 런타임 환경을 선택한다. JAR 파일 업로드코드 소스 -> 에서 업로드 -> .zip 또는 .jar 파일 업로 Handler 업데이트 Lambda 함수 테스트테스트이벤트 이름과 이벤트 JSON 형식을 지정하고.. 2023. 11. 15.
[Basic Web Application 구축하기(1)] - AWS Amplify 정적 리소스 배포 Application Architecture 사용하는 서비스AWS Amplify (https://docs.aws.amazon.com/ko_kr/amplify/latest/userguide/welcome.html)프런트엔드 웹 및 모바일 개발자가 에서 풀스택 애플리케이션을 빠르고 쉽게 구축할 수 있도록 특별히 제작된 도구 및 기능 세트로  Amplify Hosting 및 Amplify Studio라는 두 가지 서비스를 제공 Amazon API Gateway (https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/welcome.html)규모와 관계없이 REST 및 WebSocket API를 생성, 게시, 유지, 모니터링 .. 2023. 11. 15.
[AWS] 3 Tier - Architecture, Web Application Architecture 3 Tier - Architecture 어떠한 플랫폼을 3계층으로 나누어 별도의 논리적/물리적인 장치에 구축 및 운영하는 형태이다. 보통 프레젠테이션 계층, 로직 계층, 데이터 계층으로 나눈다. 프레젠테이션 계층 : 사용자가 직접 상호 작용하는 구성 요소이다. 주로 사용자 인터페이스를 지원하면 GUI 또는 Front-End라고도 부른다. 따라서 이 계층에서는 사용자 인터페이스와 관계없는 데이터를 처리하는 로직은 포함하지 않는다. 대표적인 예로는 Web Server, HTML, Javascript, CSS 등이 이 계층에 해당 로직 계층 : 사용자 작업을 애플리케이션 기능 (e.g CRUD 데이터베이스 작업 및 데이터 처리) 으로 변환하는데 필요한 코드 데이터 계층 : 애플리케이션과 관련된 데이터를 보관하.. 2023. 11. 15.
[Python] 파이썬 리스트 중복 제거 for문을 이용한 리스트 중복 제거 1. 중복된 원소가 제거된 리스트를 담을 새로운 리스트 result 생성 2. 중복을 제거하려는 리스트를 for문으로 돌면서 result에 있는 값인지 확인 3. 존재하는 값인 경우 pass 아닌 경우는 result 리스트에 추가 array = [10, 7, 8, 9, 3, 10, 7, 1] result = [] for i in array: if i not in result: result.append(i) print(result) set 자료 구조를 이용한 리스트 중복 제거 set 자료구조의 가장 큰 특징은 중복이 불가하다는 것이다. 이 성질을 이용해 리스트의 중복 제거를 할 수 있다. 1. 리스트를 set 자료구조로 변환(이 과정에서 중복제거가 됨) 2. set 자료.. 2023. 8. 30.