전체 글 74

Excel download java spring

먼저 엑셀 파일을 생성하는 백엔드(서버) 로직을 구현합니다. 이 때 Apache POI 또는 다른 자바 엑셀 라이브러리를 사용하여 엑셀 파일을 생성합니다. 생성된 엑셀 파일을 HTTP 응답에 실어서 클라이언트(프런트엔드)로 보내기 위해 브라우저가 이해할 수 있는 형식으로 변환합니다. 보통 엑셀 파일은 application/vnd.ms-excel 또는 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet 형식으로 설정됩니다. 해당 파일의 내용을 HTTP 응답의 body에 쓰고, 파일의 MIME 타입을 설정합니다. 클라이언트(프런트엔드)에서 해당 URL을 호출하면, 백엔드에서 생성된 엑셀 파일이 HTTP 응답으로 반환되고 브라우저는 파일 다운로..

Java/Basic 2023.07.25

response.getOutputStream() 이란?

response.getOutputStream()은 HTTP 응답의 바디에 데이터를 쓰는 단계를 훨씬 간단하게 구현한 것입니다. HTTP 응답을 처리할 때에는 웹 서버는 클라이언트로 응답을 보내기 위해 HttpServletResponse 객체를 사용합니다. response.getOutputStream()은 이 HttpServletResponse 객체를 통해 HTTP 응답의 바디에 데이터를 쓸 수 있는 스트림을 얻어옵니다. 이후에 데이터를 이 스트림에 쓰면, 해당 데이터가 HTTP 응답의 바디로 전송됩니다. 일반적으로 파일 다운로드를 위해서는 생성된 파일을 스트림으로 변환한 후, response.getOutputStream()으로 얻은 스트림에 파일 데이터를 쓰면 됩니다. 이렇게 하면 생성된 파일이 HTTP..

Java/Basic 2023.07.25

HTTP 응답의 매커니즘

HTTP 프로토콜은 클라이언트(예: 웹 브라우저)와 서버 간의 통신을 위한 규칙과 규약을 정의하는 프로토콜입니다. 클라이언트는 HTTP 요청을 보내고, 서버는 HTTP 응답을 반환하여 이러한 요청에 응답합니다. 파일 다운로드는 이러한 HTTP 응답의 일부로 처리됩니다. 파일 다운로드 매커니즘은 다음과 같은 순서(8가지)로 동작합니다: 1. 클라이언트(브라우저)는 HTTP 요청을 생성하여 서버에 보냅니다. 이 요청은 특정 URL에 대한 것이며, 파일을 다운로드하는 경우 해당 파일을 제공하는 URL을 호출합니다. 2. 서버는 요청을 받고 요청에 맞는 처리를 수행합니다. 엑셀 파일을 생성하는 등의 작업을 수행한 후, 이 파일의 내용을 HTTP 응답으로 보내기 위해 데이터를 준비합니다. 3. 서버는 HTTP 응..

Java/Basic 2023.07.25

Ngnix rmtp 만들기

Kubernetes(K8s) Deployment 파일을 사용하여 Nginx RTMP 서버를 배포하는 방법. Nginx RTMP 서버는 RTMP(Real-Time Messaging Protocol)를 사용하여 스트리밍 서버를 구축하는 데 사용. 먼저, Nginx RTMP 서버를 배포하기 위해 Kubernetes Deployment 파일을 작성해야 되는데 아래는 간단한 예제 1. nginx-rtmp-deployment.yaml 파일을 생성하고 다음 내용을 붙여넣습니다: apiVersion: apps/v1 kind: Deployment metadata: name: nginx-rtmp-deployment spec: replicas: 1 # 배포할 파드 수를 지정합니다. 필요에 따라 조정할 수 있습니다. sele..

Cloud/K8s 2023.07.25

The Cloud Native Computing Foundation (CNCF)

AWS, 하이퍼클라우드 클라우드 플랫폼을 접하고 k8s 배포를 해보면서 숲과 나무에 대한 고민에 휩쌓였다. 새로운 기술은 계속 나오고 쓰는것만 쓰기에는 아깝고 더 먼저 더 좋은 것은 없을까 하는 와중에 일찍이 DevOps의 길로 들어선 친구가 소개시켜준 사이트를 공유하고자 합니다. 저 또한 그랬지만 전체를 보는 것을 좋아하신다면 맘에 드실거에요 https://landscape.cncf.io/ The Cloud Native Computing Foundation 이란? CNCF(Cloud Native Computing Foundation)는 글로벌 기술 인프라의 중요한 구성 요소를 호스팅하고 세계 최고의 개발자, 최종 사용자 및 공급업체를 한자리에 모아 최대 규모의 오픈 소스 개발자 회의를 운영합니다. CN..

Cloud 2022.08.26

Señorita - Shawn Mendes feat. Camila Cabello

안녕하세요 어제의 우울함을 딛고 오늘의 노래 ㅋㅋㅋ https://www.youtube.com/watch?v=tQQLsMfGNSw https://www.musixmatch.com/lyrics/Shawn-Mendes-feat-Camila-Cabello/Se%C3%B1orita/translation/korean Shawn Mendes feat. Camila Cabello - Señorita translation in Korean | Musixmatch Korean translation of lyrics for Señorita by Shawn Mendes feat. Camila Cabello. I love it when you call me señorita I wish I could pretend I didn..

노래 2021.12.29

Fluentd 예제(log파일을 읽어들여 POST API로 전송)

Fluentd 예제입니다. 대상서버에 td-agent(Fluentd)를 실행시켜 수집된 데이터를 대상서버 POST API로 저장하는 예제입니다. Fluentd의 conf의 구성은 아래와 같습니다. 코드 ex) # 다양한 Input Plugins 중에서 tail을 사용했습니다. @type tail # 실제 물리적 파일 위치 # 파일 타입에 따라 *를 쓰거나 %Y%m%d(20211224)로 해당 폴더에서 특정 패턴의 파일을 지정할 수 있다. path /test/test_%Y%m%d*.log # tag를 이용하여 동일한 conf파일에서 각각의 filter와 match를 구성할 수 있다. tag logFile.* # 현재 추적하고 있는 파일의 index를 저장하고 있는 파일 pos_file /var/log/td..

LOG/Fluentd 2021.12.24