Skip to content

JasonYoo1995/corona_in_korea

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  • 사용 스택 : AWS(Lambda, API Gateway, EC2, S3), NoSQL(MongoDB), Node.js Express, Ajax, HTML/CSS/EJS/JavaScript/JQuery, 공공데이터포털 API

  • 개발 기간 : 2020년 11월 23일 ~ 12월 11일

  • 시연 영상 : https://youtu.be/9zzaA21aZ4k

  • 프로젝트 내용 요약

    • 코로나19 실시간 현황 조회 (날짜별, 지역별, 종류별 필터링 기능)
    • 코로나 병원 조회
    • AWS의 다양한 서비스 적극 활용 (Lambda, API Gateway, EC2, S3)
    • AWS Lambda를 통한 Serverless Microservice Architecture
    • MongoDB로 NoSQL 경험
    • 공공데이터포털 API 3개 사용
    • chart.js로 그래프 시각화
    • 비동기 프로그래밍
  • 제작 문서

    실시간 코로나 현황 웹 페이지 문서

  • 어려웠던 점

    • 구글링 자료가 거의 나오지 않는 AWS의 생소한 서비스들을 구동시키는 데에 어려움이 있었습니다.
    • 원격 서버에게 한꺼번에 여러 번의 요청을 했을 때, 응답 순서가 섞여서 들어오기 때문에, 마지막 응답이 언제인지를 알아내는 데에 어려움이 있었고, 응답을 요청한 순서대로 정렬하는 것도 어려움이 있었습니다.
    • 람다 함수의 파라미터들 중 event 객체의 구조가 2가지여서, 내부 변수를 접근하는 데에 어려움이 있었습니다.
    • 람다 함수에 계층(Layer, 라이브러리 모듈)을 적용하는 데에 어려움이 있었습니다.
    • 공공데이터포털에서 가져온 데이터의 형식이 통일성에 어긋나는 경우가 있었는데, 이런 예외적인 상황에도 일관성 있게 데이터를 파싱하는 데에 어려움이 있었습니다.
  • 느낀 점

    • Range를 Retrieve할 때는 낱개로 여러 번 요청하지 말고, 한 번의 요청으로 모든 Range를 응답 받아야, 성능도 개선되고 후처리도 깔끔하다는 것을 깨달았습니다.
    • AWS에서 다양한 클라우드 서비스들을 제공하고 있다는 사실을 알았고, 아직 우리나라는 많은 기업이 도입하지 않았지만, 미국에서는 점점 더 활발히 클라우드 서비스를 이용하고 있다는 트랜드를 알게 되었습니다.
    • 다양한 시스템들이 서로 연결되고 통신해서 하나의 거대한 시스템이 될 수 있다는 걸 직접 경험해볼 수 있었습니다.
    • SQL과 NoSQL가 각각 장단점이 있지만, 이번 프로젝트에서 처음으로 NoSQL를 써보면서, SQL에서 불편했던 점들이 NoSQL에서는 편리하게 해결되는 것을 경험했습니다. 특히 리스트 정보를 저장할 때나 동적인 컨트롤(삽입과 삭제)에 있어서 NoSQL은 매우 유연한 구조를 지원한다는 것을 알게 되었습니다.
    • MongoDB가 해킹을 당해서 랜섬웨어에 감염되는 경험을 하면서 보안의 중요성을 깨달았습니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published