
| 주특기 | Spring, React |
|---|---|
| Organization Github | https://github.com/living-in-seoul |
| FE Github | FE : https://github.com/living-in-seoul/frontend |
| BE Github | BE : https://github.com/living-in-seoul/living-in-seoul-backend |
| 프로젝트 도메인 주소 | https://seoulvival.com:8080 |
지방에서 서울로 상경한 이들을 위한 필수 앱 “서울에서 살아남기!”. 서울살이의 유용한 정보들(지도, 날씨, 교통, 정책 등)과 함께 커뮤니티를 통한 사용자들의 활발한 소통과 공감대 형성으로, 타지에서 홀로 살아가는 이들의 어려움을 덜어줄 수 있는 앱입니다.
.png)
| 기술 | 도입 이유 |
|---|---|
| Github Actions | 배포 자동화를 통해 효율적인 협업 및 작업환경을 구축하기 위함. |
| Github를 통해 버전을 관리하고 있는데 Github Actions는 Github과 밀접하게 통합되어 있어 코드를 호스팅하고, 이를 테스트하고, 릴리스하고 배포하는 모든 작업을 Github Actions 하나로 처리할 수 있다. 그리고 YAML 파일을 사용하여 작업 흐름을 정의하는데 이는 매우 간단하고 쉽게 읽고 유지보수가 가능하다. 이러한 이유로 CI/CD 구축을 위해 Github Actions를 사용하게 되었다. | |
| Spring Data JPA + Query Methods | 키워드를 통한 빠른 검색기능을 구현하기 위함. |
방안 1.Spring Data Elasticsearch 2.Redis 3.Spring Data JPA + Query Methods
의견 조율 1안과 2안은 다뤄보지 않았던 기술로 이를 제대로 알고 가지 않으면 적용하기가 어려울 것 같다는 생각이 들었다. 시간적인 제약이 있고, 또한 레디스나 엘라스틱 서치를 쓸만큼의 많은 데이터를 한 번에 처리할 일은 거의 없을것이며 그렇기에 레디스를 써도 큰 성능의 차이를 보지 못할 것 같다는 판단이 들어서 일단은 쿼리문을 사용해서 데이터를 검색해 오는 방법을 쓰기로 결정하였다. | | JWT | STATELESS 를 해서 용량을 분산하기에 용이함 JSON 형태로 간결함 보안성과 호환성이 좋음 (다른 로그인 시스템, 모바일까지 호환) | | Spring Security | 필터를 기반으로 인증, 인가의 과정을 거치고 사용자 권한에 따른 URI 접근을 제어할 수 있어서 보안로직 구현이 간결함 |
| 기술 | 도입 이유 |
|---|---|
| Next.js | - 성능 최적화: 현재 프로젝트는 웹앱으로, PWA 를 최종적으로 바라보고 진행되고있다. 따라서 모바일 환경에서도 좋은 퍼포먼스를 보여줄수있게 SSR을 통한 최적화된 성능이 필요하다고 생각했다. |