2022-11-26-TIL TIL 2022-11-26-TIL Today I Learned Design Patterns 자바라는 언어에 종속되는 디자인 패턴도 일부 있는데, 언어에 종속되지 않는 범용적 디자인 패턴을 익히고, 또 비판적으로 바라보는 시각도 필요하다. http://mishadoff.com/blog/clojure-design-patterns/ https://... 2022/11/26 2022-TIL
2022-11-22-TIL TIL 2022-11-22-TIL Today I Learned Graceful Shutdown Graceful shutdown은 애플리케이션을 끌 때 새 요청은 더 받지 않고, 이미 처리 중인 요청은 끝까지 마친 뒤 종료하는 방식이다. 배포할 때마다 서버를 내렸다 올리는데, 그 순간 처리 중이던 요청이 끊기면 사용자는 에러를 보게 된다. Spring ... 2022/11/22 2022-TIL
2022-11-17-TIL TIL 2022-11-17-TIL Today I Learned JIB build vs Docker build Jib은 Dockerfile 없이, 그리고 로컬 Docker 데몬 없이 Java 애플리케이션의 컨테이너 이미지를 만드는 도구다. Maven이나 Gradle 플러그인으로 동작하면서 애플리케이션을 의존성, 스냅샷 의존성, 프로젝트 의존성, 리소스, ... 2022/11/17 2022-TIL
2022-11-16-TIL TIL 2022-11-16-TIL Today I Learned CQRS CQRS(Command Query Responsibility Segregation)는 데이터를 바꾸는 쪽(command)과 읽는 쪽(query)에 서로 다른 모델을 쓰는 패턴이다. Martin Fowler는 정보를 갱신할 때 쓰는 모델과 읽을 때 쓰는 모델을 다르게 가져가는 것이라고... 2022/11/16 2022-TIL
2022-11-12-TIL TIL 2022-11-12-TIL Today I Learned @Conmponent(자동주입, 자동 빈 등록) vs @Bean(수동주입, 수동 빈 등록) https://stackoverflow.com/questions/10604298/spring-component-versus-bean https://www.danvega.dev/blog/2017... 2022/11/12 2022-TIL
2022-11-09-TIL TIL 2022-11-09-TIL Today I Learned GraphQL GraphQL은 API를 위한 쿼리 언어이자 그 쿼리를 실행하는 런타임이다. 서버는 타입 시스템으로 스키마를 정의하고, 클라이언트는 하나의 엔드포인트에 필요한 필드만 골라 요청한다. 데이터 변경은 mutation, 실시간 구독은 subscription으로 표현하고, 서버에서는 ... 2022/11/09 2022-TIL
2022-11-08-TIL TIL 2022-11-08-TIL Today I Learned Spring Actuator Spring Boot Actuator는 운영 중인 애플리케이션의 상태를 확인하는 엔드포인트를 제공한다. health(상태), info, metrics, env, loggers(로그 레벨 조회·변경), threaddump, heapdump 등이 있다. 보안을 위해 ... 2022/11/08 2022-TIL
2022-11-07-TIL TIL 2022-11-07-TIL Today I Learned Metrics https://cloud.ibm.com/docs/java?topic=cloud-native-metrics&locale=ko#:~:text=%EB%A9%94%ED%8A%B8%EB%A6%AD(metrics)%EC%9D%80%20%ED%82%A4%20%EA%B0%92,%... 2022/11/07 2022-TIL
2022-11-05-TIL TIL 2022-11-05-TIL Today I Learned Spring Data JPA Projections QueryDSL에서만 가능한 줄 알았던 쿼리 프로젝션이 JPA에서도 가능하다는 사실을 알게 되었다. 실제로 쿼리가 해당 컬럼만 SELECT 하는지는 실제로 확인해 보아야한다. Spring Data JPA 문서 기준으로 프로젝션은 세 가지다(... 2022/11/05 2022-TIL
2022-11-03-TIL TIL 2022-11-03-TIL Today I Learned Zookeeper Zookeeper는 계층적인 네임 스페이스를 가지는데, 이는 분산 파일 시스템과 유사하다. 네임 스페이스에 있는 각 노드는 데이터 연관 자식과 마찬가지로 연관될 수 있다는 점만 다르다. 이는 마치 파일 시스템에서 파일이 또한 디렉터리가 될 수 있도록 허용하는 것과 같다. 노... 2022/11/03 2022-TIL