1. 함수 앱 만들기
- FaaS : 프로그램이나 모바일 앱이 VM 구축 없이 작은 코드를 실행할 수 있음, 메일이나 SMS 메세지 보내기 위해 메일 서버나 SMS 서버에 접속할 시스템 필요
- 함수 앱 : 작은 규모의 작업 처리를 간편하게 처리, 알람을 필요로 하는 서비스, 적은 회수로 서비스 호출이 필요한 모바일 앱 등에서 유용하게 사용
- 목표 : MS Azure 함수 앱과 Open WeatherMap에서 제공하는 날씨 API를 연동하여 일기예보 전송
- 날씨 예측 : 날씨 데이터 수집, 구축, 데이터 연동 3단계 구성
- OpenWeatherMap에서 실시간 제공해주는 날씨 API를 연동하여 사용
> 함수 앱 : 호스트가 옵션을 선택할 때 사용량으로 서버리스 형태를 사용함
- 함수가 실행 중일 때 컴퓨터 리소스를 결제하는 방식
- 함수 앱에서 할당되는 방법을 정의하는 호스팅 계획임
- 함수 앱 만들기는 VM 만들기와 유사, 기본, 스토리지, 네트워킹, 모니터링, 배포, 태그, 검토+만들기의 7단계로 구성
- 스토리지 : 함수 앱을 만들 때 Blob, 큐, 테이블 스토리지를 지원하는 Azure Storage를 생성
- 스토리지 이후 단계는 이후에 변경 가능
- 탬플릿 선택 : 포털에서 개발은 개발에 필요한 다양한 기능이 제공되지 않으므로 템플릿에 기반하여 함수를 작성
- 탬플릿은 특정 트리거(함수를 호출하는 이벤트 유형) 를 기반으로 구분
- HTTP 트리거는 HTTP 요청을 받을 때마다 실행되는 트리거임
- HTTP 동작 방식은 GET/POST 방식 중에 선택함
- 테스트/실행 : POST 방식은 클라이언트에서 서버로 리소스를 생성하거나 업데이트 하기 위해 데이터를 보낼 때 사용함
2. 날씨 정보 API
- 가장 선행이 되는 단계는 날씨 데이터 수집 및 구축
- 일기예보 전송 서비스 구축을 위해 시스템 구축에 집중하기 위해 날씨 데이터를 제공하는 API 사용
- OpenWeather - https://openweathermap.org/
Current weather and forecast - OpenWeatherMap
OpenWeather Weather forecasts, nowcasts and history in a fast and elegant way
openweathermap.org
- 해당 사이트는 API Key를 발급 받아야 함, API Key는 API를 호출할 때 사용자를 인증하기 위해 필요함
- 함수 코드는 HTTP 요청으로 정확하게 동작함
- 테스트 환경이 아닌 외부에서 동작하는 것을 확인하기 위해선, 함수 URL 가져