🐰 Error

thumbnail
🐾   [error] CORS error 해결 방안

배경 A서비스에서 로그인 후에 B서비스를 접속하려고 하니까 에러가 발생했다. 에러난 API를 보면 프런트에서 백으로 연결은 잘됐다. 그리고 포스트맨으로 API를 호출해도 잘됐다. 현재 상황 http://localhost:3000 - ...

thumbnail
🐾   [golang] listen tcp :7000: bind: address already in use 에러 메시지 해결방법

배경 다른 서비스는 로컬에 다 돌아갔다. 하지만 1개의 서비스만 run를 하면 종료가 됐다. 찾는 방법 err := e.Start(":" + config.Config.HttpPort) fmt.Println(err) 에러...

thumbnail
🐾   [Golang] context.WithTimeout과 context.WithDeadline

context.WithTimeout과 context.WithDeadline는 내부는 똑같다. 하지만 의미적으로 차이가 있다. 둘 다 특정 시간이 되면 취소된다. context.WithTimeout과 context.WithDeadlin...

thumbnail
🐾   [golang] context.WithCancel() 사용법

WithCanel() WithCancel(parent Context) (ctx Context, cancel CancelFunc) context.WithCancel() 혼자 사용할 수 없다. WithCancel()는 parent con...

thumbnail
🐾   [golang] context 역할 및 종류

배경 API를 만들다 보면 처음부터 끝까지 ctx echo.Context를 사용한다. 그래서 context가 궁금했다. 그리고 PT 실무에서도 설명을 해주셨다. Context 애플리케이션 전체 => 코드 전체 request에서 ...

thumbnail
🐾   [golang] 고루틴 주의 사항

주의 사항 1) wg.Add(1) 위치가 중요하다 고루틴을 실행하기 전에 wg.Add(1) 를 실행야한다. waitGroup의 초기화를 로직 처리 전에 해줘야 타이밍 이슈를 피할 수 있다. 동시성 이슈가 있어서 add는 고루틴 실행 ...

thumbnail
🐾   [Golang] 고루틴이 끝나기 전에 main이 끝나는 문제 해결 방법

배경 고루틴이 끝나지도 않았는데 main 함수가 종료가 된다. 해결방법 main은 고루틴이 끝났는지 알 수 없다. 그래서 WaitGroup 사용해야한다. 예시 func Add() { sum := 1 + 2 fmt.Printf("...

thumbnail
🐾   [Golang] 고루틴(goroutine) 기본 문법

고루틴이란? 경량화된 쓰레드(Thread) 일반적으로 OS 스레드 1개와 언어 쓰레드 1개를 사용한다. (1:1) 하지만 고언어는 OS 스레드 하나에 여러개의 고루틴을 사용한다. 즉 여러개의 스레드를 사용한다는 뜻이다. 특징 메모리를...

thumbnail
🐾   [golang] 채널(channel) blocking 해결 방법

이전꺼 글 넣기 2022.10.06 - [Study/Go 언어] - [golang] 채널(channel)에서 주의할 점 해결 방법 close를 해주면 된다. 값이 빠져나간 곳에 데이터 타입의 기본값이 들어간다. 예를 들어서 int는 ...

thumbnail
🐾   [Golang] 채널(channel) 기본 문법

채널이란? 값을 전달하는 통로이다. 고루틴에서 고루틴으로 서로 값을 주고 받을 때 많이 사용한다. 채널 생성 방법 ch := make(chan 데이터타입, 사이즈) 예시 ch := make(chan int, 3) int 타입의 채널에...