Computer language and framework14 [GO] graceful shutdown 이란? 또 면접에서 모르는 사안이 나왔는데 너무 기초적인 부분이지만 내가 아예 알지 못해서 설명하지 못했다. 다시 한번 반성하면서 작성해보겠다. 우선 여러 조사를 거친 결과 리눅스 kill 시그널에 대해서 알아 보는것이 좋다. * 리눅스 시그널이란? - 프로세스에 어떤 이벤트의 발생을 알리기 위해 전달되는 소프트웨어 인터럽트 - 흔히 우리가 어떠한 프로그램을 강제 종료 시키기 위해서 ctrl + c 를 입력해서 강제종료 시킬 때 보내는 시그널을 생각하면 편하다. 이 중에서 수많은 시그널중 우리가 주목해야 하는것이 SIGTERM, SIGKILL 이다. 이 중 SIGKILL 의 경우 해당 프로세스가 리소스 정리나 다른 것들을 하는 것을 수행하는것과 상관 없이 바로 프로세스를 죽여서 문제가 발생하게 된다. 하지만 S.. 2023. 2. 20. [GO] Golang http 오늘 인터뷰를 보고 제가 정확하게 http 를 정확히 모르고 있다는 사실을 알게 되었다. 그렇기 때문에 한번 정리 하고 가는게 좋겠다는 생각에 글을 작성하게 되었다. 1. http 란? html 문서와 같은 리소스를 가져올 수 있도록 해주는 프로토콜입니다.[1] 이 과정에서 http message 를 보내서 서버와 클라이언트가 소통하게 되는데 * request * response 각, 각 둘을 통해서 소통을 하게 됩니다. HTTP Request 요소들 Start line Http Method ( GET, PUT,POST ) URL Http Version Headers 요청에 대한 정보 어디에서 어떻게 보냈으면 어떤 종류의 데이터를 보내는지에 대한 이야기 Body Html 과 같은 Data 를 포함하고 있.. 2023. 1. 26. [GO] Golang json 사용하기 요즘 들어서 다시 처음부터 공부하고 있습니다. 그러다 보니 자연스럽게 해야 하는 일들이 있어서 이렇게 정리하려고 합니다. 데이터를 주고 받을때 가장 많이 사용하는 형식중 json 형식을 사용하게 되는데 이러한 것을 사용하는 가장 기초적인 부분들을 정리 해보겠습니다. 아래 코드는 go1.19.4 darwin/arm64 에서 작성 되었습니다. 또한 chatGPT 에서 golang json 이라고 친 코드를 제가 조금 수정해서 첨부해 넣었습니다. ( ChatGPT 최고...) package main import ( "encoding/json" "fmt" "log" "reflect" ) type Person struct { Name string Age int } func main() { jsonData := `.. 2023. 1. 15. [Go] 간단한 gorm 사용기 휴식기에 접어 들어서 golang 공부를 해보자는 생각에 두서 없이 사용 했던 gorm 을 정리 해보겠습니다. * database 변수 생성 var ( db *gorm.DB ) 위 와 같이 변수를 선언 해두고 해당 db 에 대해서 객체를 생성해주면 된다. func Connect() { fmt.Println("Connecting to mysql database") rootid := os.Getenv("ROOTID") rootpwd := os.Getenv("ROOTPWD") database_name := os.Getenv("DATABASE") d, err := gorm.Open("mysql", rootid+":"+rootpwd+"@/"+database_name+"?charset=utf8&parseTime=T.. 2022. 6. 24. 이전 1 2 3 4 다음