본문 바로가기

사이드 프로젝트17

[사이드 프로젝트] EP 18. 사이드 프로젝트를 마무리하며 🍺 서비스 이름 : Get A Beer 🍺 개발 기간 : 2023.01.30 ~ 2023.03.10 🍺 개발 인원 : 총 6인 (FE 3인 + BE 3인) GetABeer www.getabeer.co.kr 반성하자... 이 글을 올리기까지 두달이 걸리다니...🤦🏻‍♀️ 📍평가 도메인과 안주 추천 도메인 평가 도메인과 안주 추천 도메인 모두 로그인 한 사용자만 작성 가능 수정 혹은 삭제 시, 작성자와 로그인한 유저가 일치해야 요청 처리 가능 회원은 하나의 맥주에 한 개의 평가만 작성 가능 회원은 하나의 맥주에 여러 개의 안주 추천 작성 가능 안주 추천 작성 시, 이미지 업로드 할 수 있도록 구현 S3를 이용하여 서비스에 필요한 이미지를 업로드 후, URL을 DB에 저장 안주 추천 수정 시, 이미지 수정 가.. 2023. 5. 12.
[사이드 프로젝트] EP 17. 자꾸만 죽어버리는 EC2 🍺DATE : 2023.03.03 FRI ~ 2023.03.07 TUE 📁 자꾸만 죽어버리는 EC2 금요일부터 자꾸 EC2가 죽어버린다... GitHub Actions를 통해 CI를 구축하고 CodeDeploy를 이용해서 CD를 작업했는데... 계속 서버가 죽는다... 이유를 알 수가 없다.. CPU 사용량이나 램 등을 계속 체크했지만 별다른 문제가 없었다.. 그래서 저번에 해킹이었을까봐 보안그룹, VPC를 다 밀고 다시 해놨는데도 주말에 사망했다... 월요일에 몸이 안좋아 오늘 아침에 바로 확인했는데, 상태검사가 통과가 되지 못했다. 검색해보니 해당 문제는 재부팅하면 된다고 해서 재부팅을 하였다. 계속해서 해당 문제가 발생하다보니... 방법을 바꾸기로 했다.. 우선 프로젝트에 같이하는 팀원분이 다른 프.. 2023. 3. 8.
[사이드 프로젝트] EP 16. 관리자와 채팅을 한다는 것 🍺 2023.03.01 - 03.02 Wed ~ Thu 📁 관리자와 채팅을 한다는 것 현재 웹 소켓을 이용해 채팅을 구현중이다. 카프카와 레디스 모두 시도해보고 있다. 웹소켓으로만 하는 예제를 따라 치고 실행을 했을 때는 무사히 잘 실행되었다. 하지만 레디스와 카프카로 했을 때에 구독자가 잘 받는 지 그리고 해당 데이터를 poll 할 수 있는지가 어려웠다. 또한 내가 구현하려는 것은 수신자인 관리자의 아이디를 모를 수 있기 때문에 어떻게 해야할 지 의문이 컸다. 그래서 레디스와 카프카의 토픽을 이용해서, 해당 토픽을 관리자가 구독하게 하여 구현하려고 했었다. 하지만 웹소켓으로 테스트 하는데에는 한계가 존재했다. 카프카는 전달된 데이터가 카프카 토픽에 들어간 것을 확인했고 레디스는 전달하였지만 그것은 AP.. 2023. 3. 3.
[사이드 프로젝트] Ep15 . Github Actions로 자동배포하기 🍺 DATE : 2023.02.27 - 28 Mon & Tue 📁Github Actions로 자동배포하기 1차 구현을 마무리하면서 자동 배포를 꼭 해내고 싶었다. 그동안 했던 프로젝트에서 아쉽게 배포 파트를 맡지 못하여 배포 부분이 약했고, 특히 CI/CD는 정말 무지했기 때문이다. 그래서 이번에 꼭 자동 배포를 해내려고 했다. CI는 깃허브 액션을 통해서 구현하려고 했다. 아직 프로젝트들이 dev 브랜치나 main 브랜치로 이동하지 않았기 때문에 dev-be 브랜치를 바라보게 하여 구현하였다. 처음에는 해당 파일이 zip파일로 형성되지 않았다. 그래서 코드를 수정하는 도중, GitHub Actions가 try로 알려준 코드를 입력해 보았다. (이것이 이후 파국을 만들어 낼 줄은 꿈에도 상상 못했다.) .. 2023. 3. 1.
[사이드 프로젝트] EP. 13 제대로 정신 차리고 확인하기 🍺DATE : 2023.02.22 WED 📁 제대로 정신 차리고 확인하기 csv 파일을 찾지 못하는 에러가 발생하였다. 아래의 코드처럼 계속해서 문제가 생겼다. ava.io.FileNotFoundException: src/main/java/be/global/init/Get_A_Beer_Products.csv (No such file or directory) at java.base/java.io.FileInputStream.open0(Native Method) at java.base/java.io.FileInputStream.open(FileInputStream.java:219) at java.base/java.io.FileInputStream.(FileInputStream.java:157) at java.. 2023. 2. 23.
[사이드 프로젝트] EP. 12 버그잡기...벌레 잡기.. 보호되어 있는 글 입니다. 2023. 2. 21.
[사이드 프로젝트] EP11. 삐걱삐걱 하루 일기 🍺 DATE : 2023.02.16 THU 📁 삐걱삐걱 하루 일기 오늘은 정말 삐걱삐걱의 연속이었다...ㅎ Kafka 실행에 문제가 생겨서 모든 properties 확인 후 재설치 하고 (1차) 깃허브 연결이 끊겨서 토큰 발급하고 (2차) 소셜 로그인 중에 리다이렉트가 http로 들어가서 바꿔주고, Redis 호스트가 로컬이었어서 바꿔주는 (3차) 문제들이 연속해서 나타났다 ^_^ 그래도 확실히 이렇게 부딪히면서 알게되는 게 기억에 오래 남는다..! 그러니 오늘도 기억에 오래오래 남겠지!!! 📎 Kafka 실행 및 확인하기 어제 만들어둔 Kafka 채팅을 확인하기 위해 Kafka를 실행해주었다. 먼저 zookeeper를 실행해 주고, Kafka를 실행해주었다. 근데 이 두 개를 실행하면 계속 8080 포.. 2023. 2. 17.
[사이드 프로젝트] EP10. ElastiCache 연결 및 Kafka 시작 🍺 DATE : 2023.02.15 WED 📁ElastiCache 연결 및 Kafka 시작 📎 ElastiCache 연결 : 로그인 과정에서 RefreshToken을 Redis에 저장하고 있다. 그렇기 때문에 배포 할 때에 Redis를 켜줘야 했다. EC2에 바로 Redis를 깔아서 하기에는 프리티어 인스턴스라는 부담이 있었다. 다행히도 ElastiCache에 프리티어로 사용이 가능한 타입이 존재했다. (cache.t2micro) 그래서 해당 타입으로 ElastiCache를 연결하였다. 혹시나 과금이 나지 않도록 설정 하나하나를 찾아보고 생성해주었다. 그래서 복제 노드가 존재하지 않고 다중AZ도 선택하지 않았다. 이번에 해당 서비스를 처음 알게 되어 사용해보는 것이었다. 그래서 더 알아가고 싶었고, 더 .. 2023. 2. 15.
[사이드 프로젝트] EP 9. QueryDsl 조회 커스텀 및 이미지 수정 보호되어 있는 글 입니다. 2023. 2. 15.
[사이드 프로젝트] EP 8. 한 주를 마무리하며 보호되어 있는 글 입니다. 2023. 2. 10.
[사이드 프로젝트] EP 7. 아직도 어려운 연관관계 보호되어 있는 글 입니다. 2023. 2. 7.
[사이드 프로젝트] EP 6. 도메인 연결 및 HTTPS 설정 🍺 DATE : 2023.02.06 MON 📁 도메인 연결 및 HTTPS 설정 이번 사이드 프로젝트를 하면서 꼭 배포를 해보고 싶었다. 그래서 배포 부분을 맡았고, 1차 배포를 위해 도메인을 연결하고, HTTPS연결을 시도하였다. 1️⃣ 도메인 연결 혹시다 다른 path로 문제가 생길 수 있어서 하위 도메인으로 설정하기로 하였다. 그래서 가비아에서 도메인을 구매하고, 하위 도메인을 등록하였다. 그리고 ACM(AWS Certificate Manager)로 인증서를 받았다. 2️⃣ 로드 밸런서 생성 HTTPS를 사용해야 하기 때문에 로드 밸런서를 생성하고 설정해주었다. 기본 포트인 80과 HTTPS 포트인 443포트를 리스너에 추가해주고, 대상 그룹도 생성해주었다. Heath Check가 계속 Unhealt.. 2023. 2. 7.