Photo by Christopher Robin Ebbinghaus on Unsplash Websocket의 대표적인 사용처는 채팅이 아닐까? 지금까지 살펴본 websocket의 동작이 실제 애플리케이션에서 어떻게 구현되고 활용되는지를 gorilla/websocket 패키지에서 제공하는 채팅 예제의 서버쪽 코드로 알아보겠다. websocket connection이 이루어지고 나서 message를 주고 받는 것은 서버와 클라이언트에 차이가 없기 때문이다. 구글링 해보면 이 예제에 대한 분석과 설명은 꽤나 많다. GitHub: https://github.com/gorilla/websocket/tree/master/examples/chat Websocket connection 클라이언트가 서버의 /ws end..
Photo by Fitsum Admasu on Unsplash 사정이 있어서 평소 달리기를 할 때에 Strava와 Nike Run Club(이하 NRC)앱을 둘 다 켜놓고 기록하는데 NRC 앱의 오류와 그 복원 과정에서의 실수로 달리기 기록 하나가 날아갔다. 지인들과 NRC 챌린지를 하고 있는데 기록을 수동으로 넣으니 챌린지에는 반영이 되지 않았다. Strava의 달리기 기록을 Nike Run Club으로 옮길 수는 없을까? 구글링을 통해 Reddit에서 아래 링크의 방법을 알아내어 성공했다. Strava와 NRC간에 직접 연동하는 방법이 없기에 Garmin connect로 기록을 옮긴 다음에 NRC의 partner app으로 Garmin connect를 지정하는 것이다. 링크: https://www.r..
그린나이트를 보고 이동진의 해설을 포함하여 여러 유튜브의 해석을 더해서 보고 나니, 나의 해석에 대해서도 한 줄 남겨보고 싶어졌다. 이동진 유튜브 해설: https://youtu.be/WLpY6vv4nIk 천지도 모르는 가웨인 천둥 벌거숭이 가웨인을 보여주면서 영화는 시작한다. 외삼촌은 전설적인 왕이고, 어머니는 아들을 너무나도 사랑한다. 먹고 사는 걱정 하나 없이 젊음을 즐길 따름이다. 하지만 콤플렉스도 있다. 쟁쟁한 기사들 앞에서는 그저 집안 잘 만난 도련님일 뿐이다. 어머니가 마녀라는 세간의 시선은 또 다른 상처일 것이다. 사고를 치다 가웨인이 특히나 유별나게 못나거나 한심한 것은 아니다 싶다. 흔히들 "그 시절에 SNS가 있었다면 흑역사가 고스란히 남았을 거다" 이야기하듯 누구나 미숙하고 부족했던..
Photo by Christopher Robin Ebbinghaus on Unsplash 이전 포스팅에서 websocket 전반을 둘러보며 처음 연결시의 handshake를 정리했었는데 이 부분의 코드가 gorilla/websocket 패키지에서는 어떻게 구현되어 있는지를 살펴보자 이전 포스팅: https://jusths.tistory.com/249 GitHub(gorilla/websocket): https://github.com/gorilla/websocket GitHub(gorilla/websocket echo example): https://github.com/gorilla/websocket/tree/master/examples/echo Websocket connection을 위한 handshake..
Photo by Christopher Robin Ebbinghaus on Unsplash Websocket protocol을 보면 mask 여부를 표시하는 flag bit와 masking 적용시 사용할 maksing-key값이 들어가있다. 찾아보니 cache poisoning을 방지해준다 한다. cache poisoning이 뭘까? cache poisoning이란 - 초간단 버전 cache poisoning까지 실제로 해보고, websocket message를 masking/non-masking 했을때의 차이까지 들여다보고 싶어졌지만 있었지만 토끼굴로 들어가면 안된다 싶어 최소한의 이해만 하고 넘어가도록 한다. * 토끼굴(rabbit hole): a situation in which you become ..
Photo by Christopher Robin Ebbinghaus on Unsplash 간단하게 메시지를 주고 받는 websocket server를 만들어 볼 일이 있었다. gorilla/webscoket의 예제를 참고하여 server와, 테스트를 위한 client까지 동작시켜 보았는데 이참에 개념을 좀더 들여다보자 싶어져서 자료를 찾아 정리해보았다. 이어서 gorilla/webscoket 패키지의 구현을 들여다보려 한다 참고 링크(라고 하고 거의 번역을 한 수준): https://sookocheff.com/post/networking/how-do-websockets-work/ GitHub(gorilla/websocket): https://github.com/gorilla/websocket Websoc..
Photo by John Schnobrich on Unsplash 2021-11-06(토) Golang Weekly 메일링리스트에서 Go와 관련한 행사에서 발표한 영상을 소개받았다. 4 Great Talks from Google's Go Day 2021 — It took place just yesterday but you can register to watch the talks (which are all reasonably short and ideal for lunch breaks!) on demand now.. or you can use our links direct to the YouTube versions ;-) Using Generics in Go with Ian Lance Taylor (who ..
Photo by Courtney Cook on Unsplash 제법 많은 분들이 테니스 엘보, 골프 엘보로 오랫동안 고생하는 것으로 알고 있다. 작은 도움이 될까하여 간략히 경험을 정리하여 공유한다. 원인과 증상 미취학 아동인 아들이 둘 있는데 더 어릴 때에 카시트에 태울때 팔의 힘 만으로 쭉 뻗어서 앉히고는 했었는데 그 원인으로 조금씩 아팠다가 2021년 1월 초부터 통증이 심해졌다. 세수를 하며 손바닥이 얼굴을 누르는 힘 만으로도 통증이 느껴지는 수준에 이르자 병원을 알아보게 되었다. 병원 진료 2021년 1월 말부터 1주일 간격으로 방문하여 염증 주사를 맞았는데 상태가 호전되는 느낌을 받았다. 초음파 검사를 했지만 기계처럼 완치를 확인 검증하는 방법은 없다며 통원을 2주일 간격으로 늘리자고 했다. ..
멍게 멍게는 성체가 되면 자신의 뇌를 먹는다. (위키링크: https://bit.ly/3w2fKHq). 재미있는 이야기인데 곰곰이 생각해보면 생명체에게 뇌는 필수적인 것이 아니라는 말로도 해석된다. 유전자를 다음 세대로 넘겨주는 것이 진정한 목표이고, 뇌는 그 수단이자 도구일 뿐인 것이다. 로또 버킷리스트가 있었다. 2주간 홋카이도 자전거 일주하기, 캐나다를 자동차로 횡단하며 여행하기 등등. 후쿠시마 원전 사고로 구체적으로 준비했던 홋카이도 여행을 못갔었던게 아직 기억이 난다. 그런데 어느 날 머리속 이런저런 상상의 나래를 펴다가 로또 1등이 되면 뭘 할까 하는, 누구나 한 번씩 그려보는, 생각에 이르렀는데 로또가 된다면 버킷리스트를 이루기 힘들게 하는 많은 장애가 해소되는게 명백한데도, 갑자기 모든게 ..
간단한 API 서버를 제외하고는 웹서비스의 전형적인 HTTP API server를 실무에서 개발한 적이 없다. 유튜브에서 Golang의 대표적인 web framework인 Gin을 이용한 좋은 강좌를 만나 이를 하나씩 따라하려고 한다. 다섯 번째로 미들웨어에 대해 알아본다. Playlist: Rest API in Golang using Gin Gonic: https://bit.ly/3hsZKbv YouTube. Grouping Rest API's in Golang using Gin: https://youtu.be/sh80Do4yIqA 구현해본 GitHub repo: https://github.com/nicewook/gin-gonic-study 이번 블로그 포스팅 소스코드: https://github.co..
- Total
- Today
- Yesterday
- intellij
- strange
- Gin
- ChatGPT
- golang
- OpenAI
- folklore
- solid
- bun
- github
- 명상
- 노션
- postgres
- 클린 애자일
- 인텔리제이
- 체호프
- ORM
- pool
- 중용
- Bug
- agile
- go
- websocket
- 2023
- 영화
- Shortcut
- 잡학툰
- notion
- API
- 독서후기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |