Skip to content

c0olcode/E2E1-TeachMe

 
 

Repository files navigation

Teach Me! 📚

강의 추천 플랫폼 Teach Me 입니다!
온라인 강의 플랫폼이 많아 강의를 비교하는 데 어려움이 있어 Teach Me를 개발하게 되었습니다.
Teach Me를 통해 여러 플랫폼의 강의를 한 곳에 모아 비교할 수 있습니다.
최신순, 가격순 정렬과 키워드, 강사명 검색 등의 기능을 제공합니다.

-> Teach Me! 바로가기 🍀

팀원 구성

기술 스택

개발 환경

  • MySQL 8.1.0
  • Java 11
  • Spring 1.0.15.RELEASE
  • Spring Boot 2.7.17
  • amazon linux 2023
  • Docker

시스템 아키텍처

프로젝트 과정 중 기술적 고민

  • 개발 초기에 크롤링을 구현하면서 두 개의 사이트(인프런, 패스트캠퍼스)를 각자 구현을 진행하게 되었는데 어느 정도 개발이 진행되고 나서 해당 비즈니스 로직의 메서드가 중복되는 것을 확인하였고, 인터페이스를 상속받는 형식으로 리팩토링하여 프로젝트 를 조금더 확장성 있는 구조로 개선하였다.

  • 로깅 기능을 관점 단위로 분리하여 Spring AOP기술을 활용하여 비즈니스 로직을 분리하였다.

  • 배포를 진행하면서 어느 환경에서든 효율적으로 동작할 수 있도록 WAS 와 DB를 Docker container화 하여 배포하였다.

  • 배포 이후 운영을 진행하면서 발생하는 문제나 오류를 빠르게 처리할 수 있도록 AWS에서 제공하는 CloudWatch와 SNS, Lambda를 활용해 Slack으로 알림을 받아 빠르게 대처할 수 있는 모니터링 환경의 구현을 진행하였다.

DB ERD

API 명세서

시연

1. 홈

2. 회원 가입

3. 로그인

4. 리뷰 조회

5. 리뷰 작성

6. 리뷰 삭제

7. 리뷰 수정

8. 찜 하기

9. 찜 조회

10. 강의 리스트 조회

11. 강의 상세 내용 조회

12. 크롤링 관리 페이지

13. 통계 페이지 확인

About

Online Lecture Review Service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 63.4%
  • HTML 20.0%
  • JavaScript 9.0%
  • CSS 7.5%
  • Dockerfile 0.1%