개요 요청이 빈번하게 발생한다면 연결을 끊지않고 유지해두는 것이 낫다. 하지만 요청이 없는데도 연결을 유지하는 것은 또 다른 비용이다. 이번에는 연결을 언제까지 유지하여야 하는지에 대한 설정을 알아보자. IdleConnTimeout 이다. MaxIdleConns: 유지 가능한 최대 유휴 커넥션 수, default: 100 MaxIdleConnsPerHost: 호스트마다 유지 가능한 최대 유휴 커넥션 수, default: 2 IdleConnTimeout: 유휴 커넥션 타임아웃, default: 90초 MaxConnsPerHost: 호스트마다 사용 가능한 최대 활성/유휴 커넥션 수, default: 0 (무제한) 커넥션 풀에 무한정 연결을 유지할 수 없다. 클라이언트 코드 서버는 이전 포스팅에서와 같이 바로..
개요 지난 포스팅에서는 MaxConnsPerHost의 기본 설정이 무제한이라 에러가 발생한 경우를 보았다. 기본 설정을 보완하여 문제를 해결해보자. 기본 설정을 참고로 다시 보아두자. MaxConnsPerHost는 하나의 호스트(서버)에 연결할 수 있는 개수의 설정이다. MaxIdleConns: 유지 가능한 최대 유휴 커넥션 수, default: 100 MaxIdleConnsPerHost: 호스트마다 유지 가능한 최대 유휴 커넥션 수, default: 2 IdleConnTimeout: 유휴 커넥션 타임아웃, default: 90초 MaxConnsPerHost: 호스트마다 사용 가능한 최대 활성/유휴 커넥션 수, default: 0 (무제한) 호스트(서버)당 최대 연결개수의 제한 서버코드 서버는 요청을 받..
개요 Golang HTTP 클라이언트의 커넥션 풀(connection pool)에 대해서 명확히 정리하고 싶다는 욕심이 있었는데 좋은 블로그 포스팅을 찾아서 이참에 정리를 해본다. 내용의 대부분과 코드는 다음 링크에서 가져온 것이다. 링크: https://www.sobyte.net/post/2022-03/go-http-client-connection-control/ 버즈빌 기술 블로그의 글도 정성이 가득하여 큰 도움이 되었다. 링크: https://tech.buzzvil.com/blog/http-connection-pool-in-go-explained/ 개념 정리 서버와 클라이언트는 서로간의 원하는 작업을 위해 연결하고 일을 한다. 이를 다음과 같이 비유해본다. 전송 계층(Transport layer) ..
- Total
- Today
- Yesterday
- 2023
- github
- intellij
- notion
- strange
- 티스토리챌린지
- OpenAI
- agile
- API
- 제이펍
- 엉클 밥
- Gin
- folklore
- 잡학툰
- 독서
- clean agile
- 노션
- go
- golang
- 인텔리제이
- 오블완
- 클린 애자일
- 독서후기
- solid
- bun
- 영화
- Bug
- ChatGPT
- 체호프
- websocket
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |