Home - FinalProject-AIPARK/JenaPark-BE GitHub Wiki
인공지능과 영상기술의 융합을 통해 영상 안에서 시간과 공간, 능력을 제공하기 위해 모였습니다.
프로젝트 명
JenaPark
프로젝트 기간
2022.09.06 - 2022.10.14
프로젝트 팀원 👪
-
UIUX
- 김유찬, 김동관, 이승현
-
FE
- 김민구, 김수현, 김채욱, 신재일
-
BE
- 김윤겸(@yoongyum), 이창희(@WindowH22), 강소영(@soyoungkangme)
URL
- Client : https://jennapark.netlify.app/
- API Server : https://api.fafago.link/
FE - Repo
React
, Redux
, Vite
, TypeScript
Java11
, Spring Data JPA
, Spring Security
, JWT
, Redis
, MySQL
, Swagger
, OAuth2
Python3
, gTTS
, boto3
, moviepy
, scipy
, numpy
Google Login
, Kakao Login
EC2
, S3 Bucket
, AWS Certification Manager
, CloudFront
, ELB(Application Load Balancer)
, RDS
, Route53
Jenkins
, Docker
git
, Discord
, Slack
, Post Man
, Docker DeskTop
-
두개의 EC2를 사용, 하나는 CICD용 젠킨스 서버, 다른 하나는 API Server
-
Redis 컨테이너는 동시접근을 제어하기위해 AccessToken과 토튼 재발급을 위한 RefreshToken을 저장하는 용도로 사용,
또한 로그아웃 시 해당 AccessToken을 블랙리스트로 추가해서 접근을 제어 -
파이썬 컨테이너를 따로 생성하지 않고, Spring 서버에서 파이썬 스크립트를 사용하여 음성파일과, 영상파일을 생성한뒤 S3에 저장하도록 구현
Async를 사용하여, 음성생성과 영상생성 로직을 비동기 처리
- ACM을 사용하여 SSL인증서 발급 후, ALB에 세팅
- Client에서 HTTPS로 요청하는 것을 ALB의 Listener가 가로챈 후 API Server로 요청을 우회시켜줌
- CloudFront를 S3에 연결 후, Client는 CloudFront를 통해서 S3의 미디어데이터를 다운받음
Discord를 주로 사용하여 UIUX/FE/BE 팀원들과 실시간으로 소통을 원활하게 이루었습니다.
이창희 (전체 팀장)
김윤겸 (BE 팀장)
강소영