본문 바로가기
728x90
반응형

Spring Boot9

How Netflix Uses Java 2026 Edition 리뷰 2025년에 Java 컨퍼런스에서 Netflix는 Java를 어떻게 사용하였고, 이런게 Netflix에서 어떤 영향을 끼쳤는지에 대하여 이야기해준적이 있습니다. 간단하게 이야기하면 다음과 같은 내용이 인상깊었습니다.Java의 버전을 8에서 17로 올리면서 CPU 사용량이 약 20% 감소했다.Java8의 GC와 Java17의 GC가 차이가 있음으로 인해서 성능이 좋아졌다는 이야기를 했었습니다.G1 GC에서 ZGC로 바꾸면서 STW의 시간이 대폭 줄었고, 이로 인하여 서비스 통신 시간이 감소되어 오류율이 많이 감소되었다.ZGC는 G1 GC에 비하여 많은 메모리를 소모하는 대신 STW의 시간이 대폭 줄어들어 시간적으로는 효과가 있어서 발생한 현상입니다.Spring boot WebFlux를 사용하지 않는다.Ja.. 2026. 5. 15.
Rust axum VS Java Spring boot 속도 테스트 rust 백엔드는 java 백엔드보다 빠를까? 라는 이야기로 간단하게 테스트를 해보았습니다.Rust는 axum 0.8.3을 사용하였습니다.Java는 Spring boot Web 3.4.4를 사용하였습니다.open api를 활용하여 하고자 하였으나, 초당 건수 제한과 총 건수 제한으로 인하여 간단한 로직을 구성한 후, 테스트를 진행하였습니다. test는 jemter를 사용하였습니다.설정Numbeer of Threads = 50seconds = 60Loop Count = InfiniteDuration : 180Spring boot처리량 : 85527, tps : 473.2/sec처리량 : 83539, tps : 462.6/sec처리량 : 83999, tps : 465.0/secRust처리량 : 109820,.. 2025. 4. 4.
log4j2 variable UNDEFINED log4j2를 사용하다보면, log4j2에서 사용한 변수들을 System.properties를 통하여 주입하지 않은 경우 해당 값을 인식하지 못하여 UNDEFINED를 발생하게 된다.해당 포스팅에서는 logPath를 지정하지 못한 경우 발생하는 logPath_IS_UNDEFINED라는 폴더가 생성되는데, 이를 처리하는 다양한 방식들에 대하여 포스팅해보고자 한다.상황log4j2.xml을 통하여 log를 작성해야함log4j2.xml에는 logPath를 지정하는 appender와 지정하지 않은 appender가 존재함logPath를 지정하지 않는 appender만 사용해야 하는 상황이 존재함1. log4j2.xml 2개logPath를 지정하는 경우에는 log4j2-logPath.xml이라는 파일을 만들고 해당.. 2025. 2. 25.
logback to log4j2 Spring boot를 사용하면서, logback에서 log4j2로 변경하게 되었습니다.  org.springframework.boot spring-boot-starter-web ${spring.version} org.springframework.boot spring-boot-devtools ${spring.version}다음과 같이 Spring boot를 사용하고 있는 상황에서 logback으로 프로젝트를 진행하고 있었습니다. 그러다 log4j2를 사용하게 변경하고자 하여, Spring boot starter web의 의존성중 하나인 spring boot starter logging을 exclusion처리한 후, log4j2를 직접 가져와 사용하기로 하였습니다.  org.springframework.b.. 2025. 2. 23.
728x90
반응형