3 기술 선택 이유 - 97kim/mytrip GitHub Wiki
-
스프링 부트는 많은 설정을 기본적으로 갖추고 있습니다.
-
스프링 부트에는 Apache Tomcat이 내장되어 있습니다.
-
스프링 데이터 JPA는 JPA를 더 쉽고 편하게 사용할 수 있게 해줍니다.
-
스프링 시큐리티는 보안과 관련된 많은 옵션을 제공하므로 일일이 보안 관련 로직을 작성하지 않아도 됩니다.
- css를 하나하나 조정하며 예쁘게 꾸미고 싶지만, 모두 백엔드 개발 희망자이기도 해서 UI는 부트스트랩과 CodePen 등을 참고했습니다. 그래도 최대한 예쁘게 꾸며보려고 노력했습니다.
-
도커 환경의 AWS EB와 GitHub Actions를 통해 자동배포 환경을 구축했습니다.
-
사진을 업로드할 시 AWS S3에 업로드가 되며 S3와 연결되어 있는 AWS Cloudfront를 통해 해당 이미지를 불러오도록 했습니다.
-
EC2에 데이터베이스를 설치하는 방법 대신 RDS 사용을 선택했습니다.
OS 및 데이터베이스의 설치 및 관리 그리고 업데이트를 따로 할 필요가 없어지고 모니터링이 가능합니다. 오토스케일링으로 EC2가 늘어났을 때 RDS를 공유할 수 있습니다. 추가로, AWS 콘솔을 통해 쉽게 백업이 가능합니다. 비용이 더 지불되긴 하지만 AWS 크레딧이 있기 때문에 RDS를 경험하고자 합니다. -
HTML5 Geolocation Api는 보안 상의 이유 때문에 HTTPS 환경에서만 사용 가능합니다. (크롬은 50버전 이후에 적용되었습니다)
-
도커를 사용함으로써 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있습니다.
Open API 사용
- 📝 한국관광공사 API
- 테마별 여행지 추천: http://api.visitkorea.or.kr/openapi/service/rest/KorService/areaBasedList
- 내 근처 여행지 추천: http://api.visitkorea.or.kr/openapi/service/rest/KorService/locationBasedList
- 해당 여행지 상세 소개: http://api.visitkorea.or.kr/openapi/service/rest/KorService/detailCommon
- 📝 OpenWeatherMap 날씨 API
- 📝 네이버 지도 API
- 📝 카카오톡 공유하기 API
- 📝 코로나 공공데이터 API
기타
한국관광공사 API: 일일 트래픽 1,000까지- 한국관광공사 API: 운영 계정 신청 승인으로 일일 트래픽 100,000까지
- 날씨 API: 분당 트래픽 60까지