Skip to content
Hyunseok Byun edited this page Feb 10, 2023 · 3 revisions

ACO 백엔드 상세페이지

ACO 백엔드 상세 페이지입니다. application.properties(.yml) 설정법을 소개합니다

  • 별도의 application.properties 파일이 필요합니다
  • 들어갈 속성은 이하의 표와 같습니다
속성명 속성값 설명
server.port 15251 백엔드 포트입니다. 프론트서버에 맞게 수정해주세요
server.servlet.context-path /api 하부주소입니다, 이 역시 프론트 상황에 맞게 조정해주세요
spring.servlet.multipart.maxFileSize 100MB multipart의 최대 파일크기입니다
spring.servlet.multipart.maxRequestSize 100MB multipart요청의 최대 파일크기입니다
spring.datasource.url jdbc:mysql://mysql주소:포트/aco mysql 설정입니다
spring.datasource.username mysql유저이름 mysql 설정입니다
spring.datasource.password mysql유저비밀번호 mysql 설정입니다
spring.datasource.driver-class-name com.mysql.cj.jdbc.Driver mysql 설정입니다
spring.jpa.generate-ddl true mysql 설정입니다
spring.jpa.properties.hibernate.dialect org.hibernate.dialect.MySQL57Dialect mysql 설정입니다
spring.jpa.hibernate.ddl-auto update JPA 하이버네이트의 설정입니다 상황에 맞게 조절해주세요
spring.jpa.properties.hibernate.format_sql true JPA 하이버네이트의 설정입니다 상황에 맞게 조절해주세요
spring.jpa.show-sql true JPA 하이버네이트의 설정입니다. 상황에 맞게 조절해주세요
spring.jpa.properties.hibernate
.default_batch_fetch_size
300 batch size값입니다 유연하게 조정해주세요
spring.mail.host smtp.gmail.com 구글 smtp서버 주소입니다
spring.mail.port 587 구글 smtp서버 포트입니다
spring.mail.username 구글 이메일 smtp설정이 끝난 이메일 주소를 설정해주세요
spring.mail.password 앱인증비밀번호 smtp설정이 끝난 메일주소에 2차인증을 끝낸 뒤 앱 비밀번호를 설정해주세요
spring.mail.properties
.mail.smtp.auth
true 구글 smtp서버 설정입니다
spring.mail.properties
.mail.smtp.starttls.enable
true 구글 smtp서버 설정입니다
spring.data.redis
.repositories.enabled
false redis설정값입니다
spring.data.redis
.lettuce.pool.max-active
-1 redis pool관리값입니다
spring.data.redis
.lettuce.pool.max-idle
-1 redis pool관리값입니다
spring.data.redis
.lettuce.pool.min-idle
2 redis pool관리값입니다
dev.aco.secretkey sha256기준의 길이의 임의의 문자열 json토큰암호화값입니다
dev.aco.redishost 레디스 주소 레디스 설정값입니다
dev.aco.redisport 레디스 포트 레디스 설정값입니다
spring.security.oauth2.client.registration
.google.client-id
클라이언트키 구글 oauth2 클라이언트키
spring.security.oauth2.client.registration
.google.client-secret
시크릿키 구글 oauth2 시크릿키
spring.security.oauth2.client.registration
.google.scope
profile,email 가져올속성값
spring.security.oauth2.client.registration
.kakao.client-name
KAKAO kakao auth벤더이름 값
spring.security.oauth2.client.registration
.kakao.client-id
kakao api클라이언트값 카카오 oauth2의 클라이언트 값
spring.security.oauth2.client.registration
.kakao.client-secret
kakao api 비밀값 카카오 oauth2 비밀 값
spring.security.oauth2.client.registration
.kakao.redirect-uri
리다이렉션 url 카카오 oauth2값
spring.security.oauth2.client.registration
.kakao.scope
account_email,profile_nickname,profile_image 카카오 oauth2값
spring.security.oauth2.client.registration
.kakao.authorization-grant-type
authorization_code 카카오 oauth2값
spring.security.oauth2.client.registration
.kakao.client-authentication-method
POST 카카오 oauth2값
spring.security.oauth2.client.provider
.kakao.authorization-uri
https://kauth.kakao.com/oauth/authorize 카카오 oauth2값
spring.security.oauth2.client.provider
.kakao.token-uri
https://kauth.kakao.com/oauth/token 카카오 oauth2값
spring.security.oauth2.client.provider
.kakao.user-info-uri
https://kapi.kakao.com/v2/user/me 카카오 oauth2값
spring.security.oauth2.client.provider
.kakao.user-name-attribute
id 카카오 oauth2값
dev.aco.filepath /Users/hyunseokbyun/Documents/acoimage/ 이미지 저장 경로 (사전에 만들어주세요)

기술별 설명

Spring boot 3.0

작년 11월 24일 3.0이 GA버전으로 올라오며 정식릴리즈가 확정되었습니다
그리 큰 메이저한 업데이트는 없으나 자잘한 업데이트(시큐리티 등)을 위해 사용되었습니다
그외 기능적으로 가장 빠르게, 능숙하게 만들수있다 생가각하여 선정되었습니다

MySQL8

SNS형식의 데이터를 다루기에 더욱더 빠른 성능을 보이는 8버전을 선택하였습니다
기타 여러 살짝 달라진 쿼리함수등도 익숙해지기위해 사용되었습니다

Redis

이메일, 아이디/비밀번호 찾기 등 휘발성있는 NoSQL서버로 염두, 사용되었습니다
또한 MQ로도 사용하려했으나 시간, 기술상 실패하였으나 좋은경험이 되었습니다

Lightsail

백엔드, MySQL, Redis등의 사용을 위하여 아시아쪽 리전에 서버를 열어 활용하였습니다
항시 사용하던 centos7을 두고 ubuntu20으로 운영됩니다

Github

일정배포, 역할분배, 공통레포지토리 설정, 브랜치관리등을 위하여 깃허브를 사용하였습니다

ETC.

쉘스크립트를 이용하여 간단한 확인/빌드/실행을 구현하였습니다
도커라이징도 염두하였으나 1. 단독 jar파일인점, 2. 쉘스크립트가 짜여있다는점 등을 고려하여 실시하지 않았습니다
테스팅을위해 api의권한이 필요한 페이지는 다 열어둔 상태입니다.
openapi(swagger)또한 적용되었습니다

Clone this wiki locally