본문 바로가기

전체 글143

REDIS 7 update error (feat. lettuce, refactor-core) 회사에서 redis 6 을 사용중이었는데검증계를 redis 7 로 버전업 하였더니검증 서비스에서 redis 커넥션이 되지않는 문제가 발생하였다. 에러를 2개 발견하였다.1. ERROR Exception:20 - io.lettuce.core.RedisConnectionException: Unable to connect2. ERROR HashedWheelTimer:452 - You are creating too many HashedWheelTimer instances. HashedWheelTimer is a shared resource that must be reused across the JVM,so that only a few instances are created.1번 에러현상: redis 7 부터 A.. 2025. 12. 5.
무중단 배포 아키텍처(Zero Downtime Deployment) 무중단 배포옛날에는 신규 배포를 하려면 사용자가 최대한 사용하지 않는 시간 (ex. 새벽 3시)에 서비스를 내리고 배포를 하던 시절이 있었다고 합니다.하지만 최근에는 서비스 장애와 배포의 부담을 최소화하기 위해 운영 중인 서비스를 중단하지 않고 신규 소프트웨어를 배포하는 무중단 배포를 합니다. 무중단 배포의 대표적인 방식 3가지가 있습니다.롤링 / 블루-그린 / 카나리아각각의 방식은 장단점이 있으며, 상황에 따라 적절한 배포 전략을 선택하는 것이 중요합니다.1. 롤링 배포 (Rolling Deployment)롤링 배포는 가장 일반적인 배포 방식 중 하나입니다. 새로운 버전의 애플리케이션을 점진적으로 기존 인스턴스에 교체하는 방식입니다.설명: 새로운 버전의 애플리케이션을 출시할 때, 기존에 실행 중인 서버.. 2025. 11. 16.
외부 톰캣 세팅시 artifact(war exploded) 자동 생성 안될때(2) 외장톰캣을 세팅했는데 artifact (war exploded)가 자동으로 생성되지 않을때가 있다. 아래 3가지를 설정하면 보통 설정된다. 1. 인텔리제이 설정으로 이동해 Facets -> + 눌러서 Web 추가 -> + 눌러서 Spring 추가 2. Artifact로 이동 -> + 누르고 module from project 하면 위에서 만든 war가 잡힘 3. 외장 톰캣 Edit configurations 로 이동 -> war exploded 설정 -> Application Context 를 / 로 설정 2024. 11. 12.
Exception: Received fatal alert: protocol_version 에러 해당 에러가 발생했다 1. 원인 : 서버와 자바 클라이언트 간의 tls 버전이 맞지않음 2. 환경 : 서버 - TLSv1.0, TLSv1.1, TLSv1.2 지원              자바7 - TLSv1.0, TLSv1.1서버는 v1.2를 지원하는데 자바7은 v1.2를 지원하지 않기 때문에 해당 에러가 발생하였다. 3. 해결방법: (1) 자바 8로 업그레이드 한다.                     (2) 자바에  system properties 에 v1.2를 사용하도록 명시해준다.                          java -Dhttps.protocols=TLSv1.2 -jar your-application.jar                     (3) 코드에서 명시적으로 SSLCo.. 2024. 6. 29.
org.apache.jsp.WEB_002dINF.views.index_jsp]org.apache.jasper.JasperException: java.lang.ClassNotFoundException unable to compile JSP 에러가 발생 회사 스프링 부트 프로젝트가 좀 특이했는데 로컬에서는 부트 톰캣(내장)을 사용하고 검증/운영 환경에서는 외장 톰캣을 사용해야 했다. 따라서 로컬에서는 embed tomcat(jasper ?) 라이브러리를 사용하고 검증/운영에서는 라이브러리에 embed를 삭제하고기존 검증/운영 서버 외장 tomcat 8 에 있던 el-api, jsp-api 를 lib에 넣어줬더니 jsp가 컴파일 되었다. 참고한 사이트)https://essencedrain.tistory.com/9 [에러]javax.el.ELException: Unable to find ExpressionFactory of typejavax.el.ELException: Unable to find Expre.. 2024. 6. 22.
외부 톰캣 세팅시 artifact(war exploded) 자동 생성 안될때 pom.xml의 jar를 war 로 수정하니까 생김 2024. 6. 15.