본문 바로가기

BackEnd/Spring-boot5

[CodeDeploy] 에러 로그 경로 /var/log/aws/codedeploy-agent tail -f /opt/codedeploy-agent/deployment-root/deployment-logs/codedeploy-agent-deployments.log 2023. 7. 27.
[EC2] 배포 환경에서 Gradle Error - "Could not find or load main class {클래스이름}" 에러 에러 조건 ec2 Amazon 2023 linux java 11 spring boot 2.7 rds mariadb 10.6 에러 메시지, 해석 "Could not find or load main class {클래스이름} " 이런류 검색하다보면 Intellij - Gradle 간 환경에서 자주 발생하는 이슈라고 한다. 해결한 사람들을 보면 아래 케이스로 나뉜다. Intellij 세팅을 변경하거나 (폴더 이름 한글이라 발생한 케이스) gradle 세팅을 바꿔주거나 gradle 폴더에 있는 'gradle-wrapper.jar'를 직접 밀어주거나 뭔가 나랑은 안맞는 케이스인것 같아서 build.gradle에 대해 검색해보았다. 그리고 아래 도움된 링크에서 힌트를 얻어 build.gradle을 수정했다. plug.. 2023. 7. 27.
[EC2] gradlew test 실행 시 ec2 hang -> 이후 연결 안됨 gradlew test 무한 로딩 gradlew test 실행했더니 무한 로딩이 걸렸다. 검색해보니 freetier ec2의 1GB RAM으로 build시 메모리 부족으로 뻑나는 상황이란다. 첨에 좀 당황했던게 무심코 재부팅을 했는데, SSH 연결이 안되서 엄청 당황했다. 간단한 프로젝트 하나 test 돌렸다가 뻑나니 황당하던데, 실 운영중에 뻑나면 진짜 당황스럽겠다. 최대한 많이 경험하고싶다.. 어쨌든 덕분에 Cluoud Watch도 첨으로 들어가보고, 좋은 경험이었다. ㅎㅎ 메모리 Swap으로 해결 메모리 스왑으로 해결, AWS 공식문서에 잘 설명되어 있다. ec2-memory-swap-file 2023. 7. 26.
[SpringBoot-JPA] 게시판 CRUD 이후 파일 첨부 - AWS S3 게시판 CRUD TEXT 만으로 간단하게 게시판을 구현해보았다. Data JPA를 사용했기에 List Page에서의 Pagination까지 간단하게 완료할 수 있었다. 여기에 AWS S3 이용해서 File Upload를 구현하고자 했다. 한 파일첨부는 쉽다. post 테이블에 url만 넣어주면되니까. 근데 여러 파일 첨부는 진짜 어려웠다. 데이터 중심적 설계로 접근하면 어렵지 않다. 단순히 upload_files 테이블을 만들고 FK관계로 여러 file들을 insert하는데 이 때 post_id만 잘 넣어주면된다. 근데 이걸 JPA로 == 객체 지향 중심적 설계 관점으로 접근하려다 보니 너무 어려웠다. 결국 김영한님의 `` 책을 절반 가량 읽어서 연관관계에 대한 개념을 잡은 뒤, 다른 사람들의 코드를 참.. 2023. 7. 14.
[Redis] Spring-boot-data-redis 캐싱 1. 설치 $ docker pull redis $ docker run --name some-redis -p 6379:6379 -d redis $ docker exec -it some-redis redis-cli2. Config // pom.xml org.springframework.boot spring-boot-starter-data-redis 디펜던시 설정 application.properties # REDIS spring.redis.host=localhost spring.redis.port=6379 property 설정, 우선 local에서 돌려볼거라 이정도만 세팅 @Configuration public class RedisConfig { @Value("${spring.redis.host}") pri.. 2023. 7. 9.