서버5 “Spring Event”, 세부적으로 조작해보자. 바로 직전 포스팅의 일부분을 복습해보자.Spring Event를 활용하게 되면 SRP, OCP 등 객체 지향 원칙을 준수하며 확장성 있는 서비스를 구축할 수 있다. 이벤트를 손쉽게 추가하거나 수정하여 새로운 기능을 도입하기도 쉽고 코드가 더 명확해진 것을 볼 수 있다. 하지만 Spring Event의 도입이 무조건 장점만 있는 것은 아니다. Spring Event의 여러 특성을 잘 알고 활용해야 한다.멀티 캐스팅 관계Spring Event는 기본적으로 “멀티 캐스팅” 관계이다. 하나의 이벤트 발행자의 반대편에는 다수의 소비자가 존재할 수 있다는 뜻이다. 따라서 동일한 타입의 여러 리스너가 등록되었다면 모든 리스너가 이벤트를 받게 된다.단순히 ‘오.. 훌륭한데?’라고 감탄만 할 문제가 아니다. Spring.. 개발일기/Spring 2024. 9. 25. [Alpine Linux] Nginx 설치 및 실행 NginxNginx는 고성능의 오픈 소스 웹 서버 소프트웨어로 많은 웹 서버와 리버스 프록시로 널리 사용된다. 가볍고 확장 가능한 구조를 특징으로 하고 있으며 비동기 이벤트 기반 아키텍처로, 많은 동시 접속 요청을 효율적으로 처리하여 웹 사이트나 애플리케이션의 응답 속도와 성능을 향상시킬 수 있다. 뿐만 아니라, 가상 호스팅, 로드 밸런싱, SSL/TLS 암호화, URL 리다이렉션 등 다양한 기능을 제공하여 웹 서버의 유연성과 안정성을 높일 수 있는 등 현대적인 웹 애플리케이션의 요구사항을 충족시키기 위해 매우 유연하게 활용할 수 있다.필자의 프로젝트에서는 Nginx는 선택이 아니라 필수 사항일 정도로 중요한 기술 중 하나이다. Nginx에 VPN 연결을 위한 암호화가 설정되어 있고 이 스펙이 옮겨질 일.. 개발일기/이슈 로그 2024. 8. 13. 20. JSP 기본 객체 JSP는 9개의 내장 객체를 기본으로 가지고 있다. 아래는 그 종류와 설명에 대한 나열이다. 기본 객체 실제 타입 설명 기본 객체 실제 타입 설명 request javax(jakarta).servlet.http.HttpServletRequest 클라이언트의 요청정보 저장 response javax.servlet.http.HttpServletResponse 응답정보 저장 pageContext javax.servlet.jsp.PageContext JSP 페이지의 정보 저장 session javax.servlet.http.HttpSession HTTP 세션 정보 저장 application javax.servlet.ServletContext 웹 애플리케이션 정보 저장 out javax.servlet.jspJsp.. 백엔드 개발자라면 대답해야 할 100가지 질문 2023. 10. 11. [이슈 로그] com.mysql.jdbc.Driver와 com.mysql.cj.jdbc.Driver 스프링 서버와 mysql을 연동하기 위해 application.yml에 DB 정보를 다음과 같이 작성하였다. 서버 구동에는 크리티컬한 문제가 없지만 유독 불편하게 빨간색으로 눈에 띄는 한줄이 있다. Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary. "com.mysql.jdbc.Driver"가 deprecated 되었다고? "com.mysql.cj.jdbc.. 개발일기/이슈 로그 2023. 10. 10. 3계층 구조(3-Tier Architecture) 3 계층(3-tier) 구조란, 플랫폼을 3 계층으로 나누어 별도의 논리적, 물리적 장치에 구축하고 운영하는 형태를 의미한다.웹 서버 운영을 예를 들자면, 서버 한 대에 한꺼번에 모든 기능들을 몰아넣고 구축하는 것이 아니라 데이터를 저장하고 읽는 데이터 계층, 데이터를 처리하는 어플리케이션 계층, 그리고 데이터를 표현해 주는 클라이언트(혹은 프레젠테이션) 계층과 같이 3개의 계층으로 나누어 각각의 기능을 별도의 논리적, 물리적 장치에 개발, 운영하는 형태이다. 프로젝트의 상황에 맞게 2개, 4개의 계층을 활용할 수도 있고 이 경우엔 다층 구조(Multi-tier Architecture 또는 n-tier Architecture)라고도 표현할 수 있다.인프라 관점에서 3 Tier 구조는 클라이언트로부터 re.. cs 2023. 6. 24. 이전 1 다음