온수역 맛집 소개 서비스 2탄 API Server
이 서비스는 온수냠냠냠을 위한 Api 서버입니다.
- 개발 환경 : macOS(arm-M1)
- 개발 도구 : IntelliJ
- 사용 언어 : Java(openJDK 11 - zulu 11.0.15 LTS)
- 데이터베이스 : Mysql(배포), H2 database(개발)
수정 가능성 있음
sequenceDiagram
autonumber
actor A as client
participant B as onsuyum-app(front-end)
participant C as onsuyum-api(back-end)
participant D as ec2(local)
participant E as database(amazon rds)
participant F as S3 bucket
A->>B: 이미지 업로드 버튼 클릭
B->>C: 이미지 HTTP multipart/form-data형식으로 Send
alt local storage 업로드
C--)D: 이미지 파일 local storage에 저장
else local storge 업로드 실패
C->>B: Error response send
B->>B: 실패 UI rendering
B->>A: 업로드 실패 확인
end
alt S3 storage 업로드
C--)F: 이미지 파일 s3 storage에 저장
else S3 storage 업로드 실패
C->>B: Error response send
B->>B: 실패 UI rendering
B->>A: 업로드 실패 확인
else local, S3 storage 업로드 성공
F->>C: 저장된 이미지의 s3 url 반환
C->>E: s3, local, 파일명 등 정보를 DB에 저장
C->>B: 이미지 정보들을 app에게 반환
B->>A: 이미지 보이기
end
온수냠냠냠 API는 이미지 파일 S3 bucket과 EC2(local)로 저장을 합니다.
- Swagger를 이용한 문서 자동화
OnsuYumYumYum Server는 MIT License를 적용했습니다.