Home

WS, CGI, WAS, Spring까지

WS(Web Server) HTTP 요청을 받아 정적 컨텐츠를 제공하는 서버 ex) Nginx, Apache 등 클라이언트의 요청을 직접적으로 받는 역할 요청에 따라 정적인 content들을 바로 반환하거나 동적인 컨텐츠 제공을 위해 WAS에 요청을 보내고 그 결과를 다시 클라이언트에 전달한다. CGI(Common Gateway Interface) ...

Read more

HTTP도 소켓 통신이다?

Spring Boot의 요청 처리 방식을 보기 위해 controller까지의 함수 flow를 보다가 궁금증이 생겼다. Thread를 만들고 난 후 SocketProcessorBase라는 클래스를 거치는 것이었었다. 이 클래스는 소켓 통신을 처리하는 로직이라고 하는데 기존의 내 지식으로는 HTTP 통신에서 소켓이 왜 나오는지 이해가 되지 않았다. 그래...

Read more

Spring-Discord 웹 훅 연결

원하는 채널의 설정에 들어가 웹후크를 생성한다. 웹후크 URL을 복사해둔다. HTTP로 직접 통신을 진행한다. application.yaml에 다음과 같이 웹 훅 주소를 추가한다. discord: error-webhook: https://discord.com/api/webhooks/~~~~~~ Discord 메세지를 보낼 수 있는 ...

Read more

Ubuntu IP 설정

Ubuntu 22.04 기준 홈 서버 Proxmox에 네트워크를 Public과 Private 두 개로 나눠 놓은 상태이다. 새로운 서버를 만들 때 public과 private 두 네트워크 모두에 연결하면 public의 경우 본체와 연결되어있는 공유기가 DHCP 서버 역할을 담당해 자동으로 IP를 할당해준다. 프라이빗 서버의 경우 DHCP 서...

Read more

CI/CD, Spring github action 설정

CICD CI(Continuous Integration) 한국어로 번역하면 지속적인 통합을 뜻한다. CI를 간단히 설명하면 개발자가 작성한 코드에 대한 빌드, 테스트 과정을 자동화하는 단계이다. 새로운 코드나 코드 변경사항이 정기적으로 빌드, 테스트되어 github와 같은 공유 레포지토리에 통합이 되게 된다. CI를 구성할 경우 여러명의 개발자가 동...

Read more

Spring MVC 구조

MVC pattern MVC 패턴은 Model, View, Controller를 뜻하는 세 가지의 개발 영역을 구분하여 클라이언트의 요청을 처리하고 REST, text, html 등 다양한 형태의 응답을 할 수 있는 개발 방법론 중 하나이다. 영역 구분으로 인해 각 요소들이 서로에게 미치는 영향을 최소화하면서 개발할 수 있고 유지보수를 쉽게 만들어준다...

Read more