반응형 Go2 [gqlgen] gin.Context 이용하기 문제 gin을 graphql(gqlgen)의 router로 사용하려고 할 때 gin.Context에 담아놓은 값들이, graphql resolver에서 사용할 수 있는 ctx(context.Context)에 담겨있지 않았다. gin.Context에 key-value로 저장한 값을 resolver의 ctx.Value("key")로 접근해서 사용하고 싶은 상황 gqlgen 공식 문서에서 제공하는 example에 gin.Context를 사용하는 방법이 안내되어 있다. 링크 하지만, 이 방법은 context.Context에 gin.Context를 그대로 담기 때문에 각각의 resolver에서 매번 아래의 작업을 해줘야 한다. 1. context.Context에서 gin.Context 꺼내기 2. gin.Cont.. 2023. 8. 9. [Go] go-socket.io의 Redis Adapter socket.io에서는 redis adapter를 사용할 수 있다. Adapter? https://socket.io/docs/v4/adapter/ 정의 Adapter는 client의 부분집합 혹은 전체 client에게 event를 broadcast하는 server-side component이다. 왜 필요할까? 기본적으로 socket.io에서 in-memory adapter가 broadcast를 수행하는데, socket.io 서버가 여러대로 분산되어있을 때, in-memory adapter를 이용하면 문제가 생긴다. 아래 그림처럼 두 개의 socket.io 서버가 있을 때, in-memory adapter를 이용하면 server A에서 server B에 연결되어있는 client들에게 메세지를 보내줄 수 없.. 2022. 3. 3. 이전 1 다음 반응형