서버 개발을 하다보면 클라에게 제공한 api의 속도에 신경써야 된다. 속도를 줄이는 방법으로 db 최적화, 속도가 느린 로직 개선 등 여러 가지 시도를 하는데 그 중 하나의 방법으로 cdn이 있다. cdn이란? cdn이란 content delivery network(콘텐츠 전송 네트워크)로 사용자로부터 가까운 서버로 콘텐츠를 받아 콘텐츠를 받는데 걸리는 속도를 줄여주는 그런 네트워크를 의미한다. 예를 들어 미국에 있는 사용자가 한국에 있는 서버로부터 데이터를 받을 때 지리적으로 먼 거리로 인해 속도가 느려질 수밖에 없다. 이 때 속도를 줄일 수 있는 방법으로는 미국에 한국과 똑같은 서버를 구축해서 미국 사용자는 미국 서버로부터 데이터를 빠르게 받는 것이다. 하지만 실제로 이렇게 중복되는 서버들을 여러 개..
기존에 springboot에서 http 통신을 해야할 때 RestTemplate을 곧잘 쓰곤 했다. 하지만 spring 5.0 버전부터는 RestTemplate은 더 이상 새로운 버전을 내놓지 않을 것이며 WebClient를 쓰라고 권장하고 있다. As of 5.0, the non-blocking, reactive org.springframework.web.reactive.client.WebClient offers a modern alternative to the RestTemplate with efficient support for both sync and async, as well as streaming scenarios. The RestTemplate will be deprecated in a fu..
요즘에는 개발을 하면서 k8s(kubernetes)를 안 쓸 수가 없다. 간단한 k8s 기본 구조와 k8s를 다루는데 쓰이는 기본 kubectl 명령어에 대해 정리 해보자. k8s 기본 구조 k8s 기본 구조를 살펴보면 아래와 같다. ingress 외부에서 들어오는 request 받고 관리한다. 로드밸런서와 같이 트래픽을 분산하는 역할과 ssl/tls 설정을 통해 https 통신을 할 수 있도록 해준다. service deployment에 실행되고 있는 application을 밖으로 노출시키는 역할을 한다. 내부의 어떤 deployment를 어떤 port로 실행할 것인지 service에 설정한다. deployment(pod) pod, replicaSet에 대한 관리를 해준다. 여기서 pod란 applic..
요즘 자바가 아닌 코틀린으로 작업을 하고 있다. 코틀린에서 제공하는 코루틴의 경우도 비동기 로직에 사용을 해보긴 해봤지만 잘 모르고 써 문제가 생겨 코루틴에 대해 공부하며 좀 정리를 해보려 한다. coroutine(코루틴)이란? co + routine을 합친 단어로 함꼐 작업되는 일, 작업 등을 의미한다. 코틀린에서 제공되는 것으로 코루틴을 사용하면 비동기 로직을 깔끔하게 짤 수 있다. 비동기 로직을 짜는데 대표적으로 WebFlux(웹플럭스)가 있는데 웹플럭스와 코루틴을 사용해봤을 때 코루틴이 확실히 코드가 깔끔하고 작성한 것을 이해하기 쉬웠다. 코루틴의 경우 평소에 코딩하는대로 순차적 코딩을 하면 되서 좀 더 보기 좋았던 것 같다. 코루틴은 비선점형 멀티태스킹으로 프로세스가 cpu를 할당 받으면 다른..
- Total
- Today
- Yesterday
- 이클립스
- java8
- enum
- 캐시
- 메시지큐
- Intellij
- DATABASE
- postgres
- DB
- 캐싱
- eclipse
- HttpClient
- JPA
- k8s
- 자바
- springboot
- 스프링부트
- cache
- mockito
- MAC
- rabbitmq
- Java
- annotation
- Spring
- 어노테이션
- PostgreSQL
- Caching
- 역직렬화
- 데이터베이스
- 공간데이터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |