[작심삼주 오블완 챌린지] 21일간의 블로그 여정, 마지막 날
·
Notes
블로그 시작개발을 하다 보면 문제를 해결하기 위해 검색을 하는 것이 너무나 흔한 일이었다. 최근에는 생성형 AI 덕분에 검색 빈도가 줄어들긴 했지만, 여전히 구글에 많은 것을 물어보고 있다. 그만큼 블로그 글은 문제를 해결할 수 있는 중요한 자원으로 활용된다. 그런 글을 내가 작성해 광고 수익으로 돈도 벌고 누군가의 문제를 해결해 줄 수 있다면 좋겠다고 생각했지만 시작이 가장 어려운 법이었다. 블로그를 시작하는 일은 쉽지 않았다. 한 달 전쯤 정말 갑자기 블로그를 시작하게 되었다. 주제가 떠오를 때마다 꾸준히 글을 작성할 생각은 있었지만, 매번 주제를 정해가며 글을 올릴 생각이 없었다. 처음에는 그동안 머릿속에 있던 아이디어들을 주제로 글을 쓰기 시작했지만, 시간이 지나면서 소재가 고갈되고 글을 올리지 ..
[golang] fasthttp! 속도를 뒤집어 놓으셨다
·
Language/Go
서론Go 언어는 기본적으로 HTTP 구현이 net/http라는 표준 패키지로 제공된다. 표준 패키지는 언어와 함께 관리되어 보안 측면에서도 안정적이며 HTTP 표준을 잘 준수하고 있어 대부분의 상황에서 문제 없이 사용할 수 있다. 그러나 net/http 패키지를 사용해서 서버나 클라이언트가 많은 요청을 빠른 응답 시간으로 처리해야 할 때와 같이 성능이 중요한 상황에서는 외부 패키지인 fasthttp 사용을 고려할 수 있다. fasthttp는 이름 그대로 빠른 HTTP를 제공하는 패키지로 net/http와 비교했을 때 최대 10배 빠른 성능을 제공한다. 하지만 fasthttp는 net/http와 API가 호환되지 않기 때문에 기존 코드를 다시 작성하거나 사용법을 새로 익혀야 한다. 또한 net/http의 ..
[golang] 타입 스위치(type switch)로 interface{} 값 처리하기
·
Language/Go
서론Go 언어에서 interface{} 타입은 모든 타입을 담을 수 있어 매우 유연하게 사용된다. 그러나 interface{}에 담긴 값의 원래 타입을 알아내고 처리할 때는 주의가 필요하다. 잘못된 타입 변환 시 panic이 발생할 수 있기 때문에 안전하게 타입을 다루는 방법이 중요하다. Go 언어에서 interface{} 타입의 값을 다룰 때 타입 스위치(type switch)를 사용하면 다양한 타입을 안전하게 처리할 수 있다. 타입 스위치는 값이 어떤 타입인지를 확인하고 각 타입에 맞는 처리를 할 수 있게 도와준다. 타입 스위치 예제package mainimport "fmt"func do(i interface{}) { switch v := i.(type) { case int: ..