[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 시스템 아키텍처
Project : 그때 살껄;;../개발일지2024. 9. 9. 15:33[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 시스템 아키텍처

1. 전체 아키텍처 설명GCP(google cloud), AWS를 사용해서 프론트엔드, 백엔드, 데이터베이스가 분산된 클라우드 환경에서 통합되어 동작하는 시스템이다. 각 시스템들은 모두 docker위에서 실행되며 언제든지 재실행, 복구가 될 수 있도록 dockerfile, voulume을 설정해뒀다.사실처음에는 aws ec2 프리티어만 사용해서 모든걸 올리려고 시도했었다. 하지만 프리테어에서 제공되는 ram은 1GB, 정상적으로 작동되는 서비스에서 늘릴수있는 가상ram 2GB를 합쳐도 카산드라 혼자먹는 2.7GB의 ram을 감당할수 없기 때문에 gcp로 분리를 하기로 했다. 이번프로젝트에서 느낀 aws과 gcp의 차이가 있다.aws : 성능이 매우 제한적 제한적인만큼 비용이 매우 적게듬 프로젝트 배포가 ..

[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 디스코드 Github 알림
Project : 그때 살껄;;../개발일지2024. 8. 26. 22:17[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 디스코드 Github 알림

1. PR 생성했습니다!지금 프로젝트를 디스크도 공통 톡방에서 진행하고있는데 따로 적어두는 공간이 없다보니까 pr이 다른 대화 내용에 의해서 묻혀버리고 있었다. 카톡으로 알린다고 해도 한계점이 있었다.컴퓨터를 키고 있지 않으면 디스코드를 보고 있는 사람들이 적다는 점commit, review 등을 달때도 직접 알려다 된다는거모두가 코드 리뷰를 열심히 하자는 의미에서 모두가 aprove해야 pr이 합병되도록 변경해 pr을 즉각 확인해야 작업속도가 올라간다는 거이런걸 간단하게 해결하는 방법 discord를 따로 파는 것 아래 사진처럼 따로 디스코드 채널을 만들었다.그럼이제 github에서 자동으로 오는 알람을 받아보자2. Discord 설정서버 설정으로 들어가자웹후크를 설정하자새 웹후크를 누르면 이런식으로 ..

[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 거래 시스템 설계
Project : 그때 살껄;;../개발일지2024. 8. 17. 22:30[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 거래 시스템 설계

1. 서론프로젝트에서 가장 중요한 부분중 하나라고 생각한다. 코인 거래 관련 사이트인 만큼 코인 거래 로직은 설계 단계를 깊게 고민해 봐야 한다고 생각했다. 어떤 알고리즘을 사용해야하는지 그리고 그것의 장단점을 통해서 내가 만드는 프로그램이 단점을 보완하고 장점은 살릴수 있는지 그리고 어떤 소프트웨어를 사용해야 내가 생각한 로직을 잘 녹여낼 수 있는지 고민했다. 오늘은 그것들에 대해서 설명해보려고 한다.2. 거래 로직 설계내가 개발하고 있는 거래 프로그램은 이러하다진짜 거래가 아니다.거래소를 만드는 것이 아니라 코인의 가격이 매수 혹은 매도 가격 닿으면 바로 채결이 된다.즉 구매자가 진짜 판매자 한테 사는것도 아니고 판매자가 진짜 구매자한테 파는 것도 아니다.구매와 판매를 연결해줄 필요가 없다.이는 거래..

[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] Auth + Test + CORS + Header + Swagger Error
Project : 그때 살껄;;../개발일지2024. 8. 9. 01:12[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] Auth + Test + CORS + Header + Swagger Error

// Axios 인스턴스 생성const api = axios.create({ baseURL: API_BASE_URL, withCredentials: true, // 모든 요청에 대해 withCredentials: true 설정});1. 서론엄청난 에러들과 싸운 그리고 프론트엔드에서 고생을 많이한 분기점 프론트엔드에서 고생을 해서 깊게는 아니지만 얻어간것이 많다. 개발 시간과 공부 시간의 간극을 줄이는 것이 이번 프로젝트에서 가장 신경써야하는 점. 어느정도 이해하고 이 기술을 사용할 것인가가 나의 전두엽을 계속 자극한다. 그럼 시작해보겠다.2. Facade [SW/DP] Facade Pattern (퍼사드 패턴)정의복잡한 시스템에 대해서 간단한 인터페이스를 제공해서 시스템을 이용하는 사용 객체가 단일 ..

[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] Security + JWT
Project : 그때 살껄;;../개발일지2024. 8. 5. 23:14[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] Security + JWT

1. Spring Securiy 6.0관리자가 여러 행동을 할수 있는 프로젝트인 만큼 관리자, 유저, 비로그인 유저 허용 페이지를 따로 나눴다.Jwt필터를 통해서 인증, 인가를 처리하도록 했다.package com.kmbbj.backend.global.config.security;import com.kmbbj.backend.global.config.jwt.filter.TokenAuthenticationFilter;import com.kmbbj.backend.global.config.jwt.service.TokenService;import com.kmbbj.backend.global.config.jwt.util.JwtTokenizer;import lombok.RequiredArgsConstructor;im..

[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 프로젝트 초기 설계
Project : 그때 살껄;;../개발일지2024. 8. 5. 22:39[멋쟁이사자처럼 백엔드 TIL/ 그때 살껄;;..] 프로젝트 초기 설계

1. 프로젝트 문서 및 일정 이슈관리 - Github프로젝트 문서 및 일정 이슈관리는 여러 tool들이 있다.Jira : 에자일 프로젝트 관리, 스크럼 및 칸반 보드 및 다양한 플러그인Flow : 최초의 한국 AI 프로젝트 관리 툴 Jira에도 뒤쳐지지 않는 여러 기능을 포함 및 확장성도 더 좋음Confluence : 위키 기반 문서 관리, 팀 협업, 통함 검색 - Jira랑 같이 쓰기 좋음Google Docs : 실시간 공동 작업 및 클라우드 기반 문서 저장Notion : 문서 작성, 올인원 작업 공간, 사용자 정의 가능 템플릿이런 여러가지 tool들이 있지만 같은 회고 팀원들은 정말로 한곳에서 모든걸 볼수 있는 걸 원했고우리는 Github를 택하기로 했다.이유는 이러하다. github에도 프로젝트 기..

728x90
반응형
image