AWS

AWS

    Dynamodb 이슈해결 , 페이지네이션

    제가 채팅서비스를 구현한 아키텍처의 구조는 다음과 같습니다. 기존 채팅서비스는 ChatMessage chatMessage = dynamoChatRepository.findById(chatId).orElseThrow(() -> new ApplicationException(ApplicationErrorType.CHAT_NOT_FOUND)); 다음과 같은구조로 채팅방에 있는 모든 채팅을 읽어와서 service로직에서 정렬 및 필터처리를 수행하였습니다. ISSUE 데이터가 쌓임에 따라 점점 데이터에 과부하가 발생하는 문제가 발생하였고, 어떻게 해결할 지 찾아보았습니다. 첫번째 해결방안 다음 그림처럼 20페이씩 읽어오고 이전페이지를 읽어오려면 "이전 메세지를 불러오기" 를 클릭하여 페이지네이션을 하는 방법이 있었..

    nginx port 분리하여 blue/green 배포

    dockerfile FROM openjdk:11 ARG IDLE_PROFILE ARG JAR_FILE=*.jar ENV ENV_IDLE_PROFILE=$IDLE_PROFILE COPY ${JAR_FILE} app.jar RUN echo $ENV_IDLE_PROFILE ENTRYPOINT ["java", "-Dspring.profiles.active=${ENV_IDLE_PROFILE}", "-jar","/app.jar"] application.yml spring: profiles: group: development: - common - development_database - port_8080 production-set1: - common - production_database - port_9001 pro..

    [Spring] 배포 서버의 도커 컨테이너에 크롤링 환경 구축하기

    배포 서버의 도커 컨테이너에 크롤링 환경 구축하기 ⚙️ 개발 환경 AWS ubuntu EC2 Java 11 Gradle Spring boot 문제가 발생했다. 자꾸 크롬드라이버의 경로를 못찾음 ... 뭐지뭐지 ... 📍 Dockerfile : 도커 컨테이너에 크롬 브라우저 및 크롬 드라이버 설치 후 배포 FROM openjdk:11 COPY ./build/libs/TeamPlanner-BE-0.0.1-SNAPSHOT.jar application.jar RUN apt-get -y update RUN apt -y install wget RUN apt -y install unzip RUN apt -y install curl RUN wget https://dl.google.com/linux/direct/goog..

    로드밸런싱 , 다중서버 oauth 401 error

    아 정말 삽질을 많이했던 것 같다 순수 시간으로만 거의 1~2일 걸린 것 같다. 왜 안되는거지 왜 안되는거지 고민을 많이했었는데, 결국에는 내가 이겼다. ㅋㅋ 현재 현재 다음과 같은 구조로 다중서버에 로드밸런싱 라운드로빈 방식으로 서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식으로 라우팅해주고있다. 이때 , oauth2 로그인을 하는데 있어서 오류가 발생했다. 왜? 오류가 발생했을까 ? 처음 카카오 로그인 화면이 뜨고 로그인을 하게됐을 때 401 unauthrization error 가 떳고 처음 카카오 인증서버에 인증에 성공하고 redirect하는 시점에 로드밸런싱 주소를 가르키고 있는데 이때 라운드로빈 방식이므로 처음 요청했던 서버와는 다른 서버에 다시 redirect가 되어 쿠키 및 세션이 제..