일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- index
- JPQL
- consumer
- nginx
- springboot
- 2630번
- Voice cloning
- STOMP
- elevenlabs
- docker
- 김영한
- 이미지 업로드
- zookeeper
- 백준
- jpa
- 용량 확장
- Full Text Search
- 음성 합성
- 웹 서버
- 웹 어플리케이션
- n-gram
- 웹 어플리케이션 서버
- 음성 변환
- EC2
- 트러블슈팅
- 도메인
- Kafka
- ORM
- SpirngBoot
- wesocket
- Today
- Total
목록Backend/Server (6)
enginner_s2eojeong

처음에는 ec2 내부에서 kafka, zookeeper를 백그라운드로 실행중이었는데요, docker로 묶어서 관리하고 싶어서 중단하고 설치하는데 정말 애먹었습니다.. 🥲 이 글을 보시는 분들은 저처럼 헤매지 마시길 바라는 마음에서 이 글을 씁니다.... 자 그럼 우선 우선 ec2로 접속해 docker-compose.yml 파일을 만들어줘야합니다. (저는 루트에 만들었어요) 일단은 기존의 제가 맨 처음에 작성한 yml입니다. 여러분들도 사용하는 버전에 따라서 다르게 작성하셔야합니다..!!!docker-compose.ymlservices: zookeeper: image: bitnami/zookeeper:latest container_name: zookeeper restart: always..

이번 프로젝트에서는 실시간 채팅 기능을 개발하였는데요, 이때 사용한 Kafka에 대해 알아보고 주키퍼, 스프링부트와 연동하는 과정을 정리해보도록 하겠습니다. 1. Apache Kafka Apache Kafka는 실시간으로 데이터를 주고받는 분산 메시징 시스템입니다. 실시간으로 생성되고 소비되는 대량의 데이터를 중앙 허브를 안정적이고 빠르게 전달해주는 역할을 합니다.쉽게 설명하자면, "데이터를 시간순으로 저장하고 필요할 때 빠르게 꺼내보는 택배 시스템" 이라고 생각하시면 될 것 같습니다.1.1) Kafka의 기본 구조Kafka는 다음과 같이 구성됩니다.구성설명Producer데이터를 Kafka에 보내는 애플리케이션ConsumerKafka에서 데이터를 받아가는 애플리케이션BrokerKafka 서버. 메시지를 ..

1. 문제 상황Jenkins를 이용해 프로젝트를 CI/CD 파이프라인 상에서 자동 빌드하던 중, Gradle 빌드 단계에서 오류가 발생했다. 다음과 같은 로그 메시지를 확인할 수 있었는데,Caused by: org.gradle.api.UncheckedIOException: java.io.IOException: No space left on device at org.gradle.cache.internal.btree.FileBackedBlockStore.write(FileBackedBlockStore.java:140) at org.gradle.cache.internal.btree.CachingBlockStore.flush(CachingBlockStore.java:64) at org.gradle.cache.i..

1. 왜 HTTPS 로 배포를 해야할까?프론트엔드에서 웹사이트를 배포할 때는 HTTPS로 배포해야 한다.그 이유는, 웹사이트가 HTTPS로 동작하고 있을 때, API 서버가 HTTP라면 브라우저에서 연결 자체를 차단하기 때문이다.즉, 프론트엔드에서 HTTPS로 배포된 웹사이트에서는 동일하게 백엔드도 HTTPS로 구성되어 있어야 API 요청이 정상적으로 이루어진다.이를 지키지 않으면 브라우저에서 보안 경고와 함께 요청을 막아버리는 Mixed Content 문제가 발생한다. 프론트를 Vercel 같은 플랫폼을 이용해 HTTPS로 배포하고 백엔드는 EC2에서 HTTP로만 서버가 열려 있다면, 클라이언트에서 API 요청을 보냈을 때 아래와 같은 에러가 발생한다.Mixed Content: The page at '..

1. EC2 인스턴스1.1 EC2 인스턴스 생성 EC2 서비스 접속AWS 콘솔에서 EC2 서비스를 검색해 들어갑니다.인스턴스 메뉴 이동왼쪽 사이드바에서 인스턴스 메뉴를 선택합니다.인스턴스 시작 버튼을 클릭합니다.리전(Region) 확인 및 변경화면 우측 상단에 표시되는 리전이 '서울'인지 확인합니다.서울이 아니라면 클릭해서 '아시아 태평양(서울)'로 변경합니다.💡 리전 선택 팁서버 응답 속도가 중요하지 않다면,'미국 동부(버지니아 북부)'처럼 가격이 저렴한 리전을 선택해 비용을 절감할 수 있습니다. 이름은 blog로 설정해주고,AMI는 인스턴스에 설치할 OS 및 소프트웨어 템플릿입니다.OS 중에서 Ubuntu를 선택합니다.AWS는 최초 가입 후 12개월 동안 프리 티어를 제공합니다. 저는 아직 프리 티..

문제)로컬 환경에서는 이미지 업로드가 정상적으로 작동하는걸 확인하고 배포를 했는데 레시피 업로드 과정에서 "요청 중 오류가 발생했습니다. load failed"라는 문구가 뜨면서 이미지 업로드가 되지 않는 문제가 발생했다. 예상 원인1. application.yml 파일 크기 제한혹시 용량을 너무 작게 설정했나 싶어 내가 업로드하려던 이미지 파일들의 크기를 다 계산해보았는데 충분히 넉넉했다. PASSservlet: multipart: max-file-size: 10MB max-request-size: 10MB 예상 원인 2) S3와의 연결 문제S3와의 연결 문제인지 확인하기 위해 로그를 찍어 보았다. 코드 상에서 s3Uploader.saveFile()메서드의 로그를 통해 S3에 정상적으로 이..