Section 3 - 67일차

노태경·2021년 7월 8일
0

SEB-Section 3

목록 보기
23/31

1. Toy - 40일차

1) 문자열을 입력받아 가장 긴 palindrome 반환하기

  • 매개변수의 (_) 언더바는 어떠한 매개변수가 전달되어도 무시하겠다!
  • palindrome : 앞에서 조회한 문자열과 뒤에서 조회한 문자열이 같은 경우 중 가장 긴 경우
  • 문장을 단어 단위로 분리한 후, 앞뒤로 한글자씩 붙여가며 palindrome인지 확인
    palindrome이면 길이를 기록
  • 기록된 길이 중 가장 긴 것을 반환

2) 부등호 기호들을 입력받아 부등호를 만족하는 최대 부등호 수와 최소 부등호 수의 차이 구하기

  • DFS를 통해 해결, 방문한 숫자를 기록하는 것이 중요하고, 조건문을 잘 써야함
  • 가장 큰 수는 9부터 작아지며 재귀적으로 한자리씩 비교를 통해 기록, 작은 수는 0부터 커지며 기록
  • 배열이 mutable 함을 주의해야함

3) 기수 정렬

  • 비교 연산을 하지않음
  • 정렬 속도가 빠름
  • 메모리가 더 필요
  • bucket에 자릿수 별로 인덱스에 enqueue했다가, dequeue하여 정렬

4) 매트릭스 배열과 출발, 목적지가 주어질 때, 1은 장애물, 0은 이동가능할 때, 로봇이 목적지까지 가는 최단 거리

  • Queue 자료구조를 통해 BFS 방식을 이용해서 풀어보았음

5) 위 문제와 비슷한 문제, 단 방향을 가지는 문제
방향전환까지는 잘 구현이 되었다
임의의 거리만큼 직진해야 하는데, 그 거리를 정하는 것이 어렵다

2. AWS review

  • CloudFront >> CDN(S3와 연결)
    각 CDN들에 복사본 저장, 캐시 역할
    SSL/TLS 인증 제공(https 제공 가능)

  • 프록시서버
    앞단의 역할은 캐시 (포워드 프록시)
    뒷단은 부하 분산(로드 밸런싱, 리워드 프록시)

  • <루트 도메인>.도메인.<최상위 도메인>

  • 프로그램 : 코드
    프로세스 : 코드가 메모리 상에 탑재되서 실행되는 것

  • 이미지
    이미지 : 인스턴스
    class: instance 관계와 비슷
    AMI(Amazon Machine Image) 운영체제 등 소프트웨어 구성 템플릿

  • ec2: http서버 + RDS
    s3: 정적 웹 호스팅

  • https로 제공하기 위해서는 좀 더 공부할 필요가 있어보임...ㄷ
    s3 - cloudfront(CDN / SSL/TLS 인증서 제공)
    ec2 - 로드밸런서(프록시서버 그림) (도메인 필요, 인증서 필요, HTTPS 지식) // AWS는 도메인을 구입하면 인증서도 줌
    다른 경우는 도메인따로, 인증서 따로 받아야할 필요가 있음(+Let's encrypt)

Route53(DNS지식) - 도메인과 로드밸런서, cloudfront 등을 연결해줘야 함

어렵다!!

수업내용 참고하자~

EC2: HTTP 서버
S3: 클라이언트 앱 정적 웹 호스팅 (HTTP 서버)
RDS: 관계형 데이터베이스 서버

--- 일단 여기까지만 알아도 되지만, HTTPS를 적용하고 싶다면? ---

S3 - CloudFront (CDN이면서 동시에 SSL/TLS 인증서 제공)
EC2 - 로드밸런서 (리버스 프록시 서버이면서 동시에 HTTPS 터널링 제공)
    -  그런데 로드밸런서를 적용하려면 "HTTPS 인증서"가 필요
       - 그러려면 도메인을 하나 장만해야 함
          - 도메인과 인증서는 다음 두가지 방법으로 장만 가능
              - Route 53에서 사면, 도메인과 인증서를 한방에
              - 다른데서 사면, 도메인은 받지만 Let's Encrypt를 이용해 인증서 발급이 필요

그 후...
Route 53
api.yourdomain.com은 로드밸런서로 연결하고
www.yourdomain.com은 CloudFront로 연결하면 HTTPS 배포 끝!!
profile
개발자 공부 일기😉

0개의 댓글