카테고리 없음

💡 전체 기술 스택 & 선택 이유 (웹 + 앱 + Java 버전 포함)

creator7087 2025. 5. 28. 09:59

1. 백엔드 언어 & 프레임워크

Spring Boot + Java 17(21은 너무 최신버전이라 위험성 존재)

  • 이유
    • Java 17은 현재 LTS(장기 지원) 버전으로 안정적이고 최신 기능 지원
    • Spring Boot는 Java와 궁합 최고, 보안부터 데이터 처리까지 다 가능
  • 장점
    • 최신 Java 버전이라 보안, 성능, 유지보수에 유리
    • 회사에서 많이 쓰는 버전이라 포트폴리오로 좋음 (극추)
  • 단점
    • Java 문법이 조금 복잡할 수 있음
  • 추천
    • 무조건 Java 17 + Spring Boot 추천 (극추)

2. 데이터베이스

PostgreSQL + PostGIS (공간정보 확장)

  • 이유
    • 지도(위치) 데이터를 잘 처리함 → 웹/앱에서 위치기반 서비스 필수
  • 장점
    • 공간 좌표, 반경검색, 거리계산에 강함
    • 데이터 안정성 좋음
  • 단점
    • 설치와 설정 초반에 조금 복잡함
  • 추천
    • 위치기반 서비스가 있다면 무조건 PostgreSQL 극추

3. 위치 기반 기능

Redis GEO + Kakao Map API

  • 이유
    • Redis GEO: 빠른 거리 계산 (웹, 앱에서 가까운 장소 찾기)
    • Kakao Map API: 지도 표시 및 주소 변환 (웹/앱 화면에서 보여줌)
  • 장점
    • Redis GEO는 서버에서 빠른 거리 계산 담당
    • Kakao Map은 화면에 지도 예쁘게 보여주고 주소 변환 등 부가 기능 많음
  • 단점
    • Kakao Map API는 무료 쿼터 제한 있음 → 유저 많으면 비용 발생 가능
  • 추천
    • 둘 다 함께 쓰면 좋음 (Redis GEO + Kakao Map) 극추

4. 캐시 & 실시간 처리

Redis

  • 이유
    • 실시간 인기검색어, 세션 관리 등 빠른 데이터 처리가 필요함
  • 장점
    • 속도가 매우 빠름, 메모리에 저장되어서 즉시 처리 가능
  • 단점
    • 메모리 사용량 증가 주의
  • 추천
    • 실시간 데이터 많으면 Redis 극추

5. CI/CD (자동 배포)

GitHub Actions + Docker + AWS EC2

  • 이유
    • 코드 수정 후 자동으로 서버에 배포 → 편리
    • Docker로 서버 환경 일관성 유지
    • EC2에서 실제 서비스처럼 운영 가능
  • 장점
    • 무료 또는 저렴한 비용으로 사용 가능
    • 실제 회사에서 쓰는 방법 경험 가능
  • 단점
    • 초반 설정 공부가 필요함
  • 추천
    • 꼭 도전해볼 만함 (극추)

6. 인프라 (서버 운영)

AWS EC2 + S3 + Route 53

  • 이유
    • 서버 호스팅 + 파일 저장 + 도메인 관리
    • AWS는 국내외에서 많이 쓰이는 클라우드
  • 장점
    • 트래픽 적으면 저렴함
    • 확장성 좋음
  • 단점
    • 설정 초반에 복잡할 수 있음
  • 추천
    • 비용 맞으면 극추

7. 보안

Spring Security + JWT (JSON Web Token)

  • 이유
    • 로그인, 회원 권한 관리 안전하게 처리 가능
  • 장점
    • 토큰 방식이라 앱/웹 모두에서 사용 편리
    • Spring Boot와 자연스럽게 연동
  • 단점
    • 개념 익히는데 시간 필요
  • 추천
    • 꼭 넣는 게 좋음 (극추)

8. 프론트엔드 (웹 + 앱)

웹: Next.js (React 기반)

  • 이유
    • SEO 좋고 빠른 웹 페이지 생성 가능
    • React라 학습 자료 많음
  • 장점
    • 서버사이드 렌더링으로 빠른 초기화면
    • 다양한 라이브러리 사용 가능
  • 단점
    • React 경험 없으면 처음엔 어렵게 느껴질 수 있음
  • 추천
    • React 알면 극추, 아니면 간단한 SPA도 가능

앱: React Native or Flutter (선택사항)

  • 이유
    • 한 번 배워서 안드로이드와 iOS 앱 둘 다 만들 수 있음
  • 장점
    • 웹과 비슷한 기술 스택이라 유지보수 쉬움
  • 단점
    • 학습시간 필요
    • 네이티브 기능 접근에 제한 있을 수 있음
  • 추천
    • 웹만 할 거면 안 해도 됨, 앱도 하려면 도전해볼 만함

9. 예산 & 관리 팁

  • 월 15만 원 예산에 맞추려면
    • AWS EC2 t3.micro (1vCPU, 1GB RAM) + S3 소량 사용 추천
    • 데이터베이스는 EC2 내장형 또는 저렴한 RDS 옵션 가능
    • Redis는 EC2 내에 설치하거나 저가형 클라우드 Redis 추천
    • GitHub Actions 무료 범위 충분히 활용 가능
    • Kakao Map API 무료 쿼터 넘지 않도록 주의

📌 요약 정리


 

분야 기술  선택 추천도 이유  및 한 줄 설명
백엔드 Spring Boot + Java 17 극추 최신 안정 버전, 보안 및 기능 뛰어남
DB PostgreSQL + PostGIS 극추 지도 기반 데이터 처리에 최적화
위치검색 Redis GEO + Kakao Map 극추 빠른 거리 계산 + 지도 표시 기능 완벽 조합
캐시 Redis 극추 실시간 데이터 빠르게 처리 가능
CI/CD GitHub Actions + Docker + AWS EC2 극추 자동 배포로 편리하고 실전 환경 경험 가능
인프라 AWS EC2 + S3 + Route 53 극추 저렴하고 확장성 좋은 서버 운영 환경
보안 Spring Security + JWT 극추 안전한 로그인과 권한 관리
웹 프론트 Next.js (React) SEO 좋고 빠른 웹 개발 가능
앱 프론트 React Native or Flutter (선택) 선택 크로스플랫폼 앱 개발 가능