개요 Slack slash command 를 사용할때에 HTTP POST reqeust 를 통해 보내주는 내용이 궁금하다 그것을 Golang 으로 처리하는 방법을 알아보자. httprouter 를 사용하여 조금 코드를 변경하였다. - GitHub 소스코드 위치 (현재 포스트 내용): https://github.com/nicewook/slack_slash_cmd/tree/master/version2 덤1. serveo 를 써보자. 개발시 로컬서버를 포트포워딩하여 ip에 도메인명을 할당해주는 서비스이다. https://serveo.net/ 덤2. gin 을 써보자. nodejs 의 nodemon 처럼, 소스 변경시 자동으로 서버를 재실행하게 해준다. https://github.com/codegangsta/g..
개요 1. Slack slash command 를 받고 회신하는 서버를 golang 으로 짜보자 2. 덤으로 (Heroku ) 등에 올리기 전에 ngrok 을 이용한 로컬 개발을 하자. 이후에, - httprouter 를 사용해보자. 세세한 기능은 부족하지만, 빠르고 깔끔하다는 평이다. - Heroku-CI 도 사용해보고 Heroku 에도 올려보자 참고링크: https://goo.gl/VDn4m9 httprouter: https://github.com/julienschmidt/httprouter ngrok Slack 에서 제공하는 링크: https://api.slack.com/tutorials/tunneling-with-ngrok 로컬에서 server 를 돌리면 (예를 들어 http://localhost..
개요 time.Sleep 시에 나오는 time.Duration 을 이해해보자 참고링크: https://www.ardanlabs.com/blog/2013/06/gos-duration-type-unravelled.html 참고링크: https://stackoverflow.com/a/41503910/6513756 궁금증 Playground: https://play.golang.org/p/vuHqO4Jxr04 time.Sleep(time.Duration(2) * time.Millisecond) 는 2ms 동안 sleep 하게 되는데 timeout := 2 time.Sleep(time.Duration(2) * time.Millisecond) 는 에러가 난다. time.Duration time package 의 D..
개요 프로그램 실행시간을 알아보는 unix 명령어인 time 에 대해 알아보자 링크: https://www.wikiwand.com/en/Time_(Unix)#/Real_time_vs_CPU_time 링크: https://engineering.purdue.edu/ECN/Support/KB/Docs/UserTimeVsSystemTime 정리1 리눅스에는 user mode 와 kernel mode 가 있다. user mode 는 사용자가 맘대로 할 수 있지만, kernel mode 는 system call 로면 접근할 수 있다. user time: user mode 에서의 소요시간 system time: kernel mode 에서의 소요시간 정리2 그런데 실제 소요시간인 real time = user + sy..
개요 CI, CD 라고 한다. Continuous Integration / Continuous Delivery (또는 Deployment) Lint, Test 등도 포함되겠지만 여기서는 씸플하게 최소한 만을 적용해본다. 1) Local PC 에서 golang 웹서버를 만들고, 추가 Feature 를 구현할때마다 Github 에 push 하면 2) Github 와 연결된 Travis-CI 에서 자동으로 빌드가 되고, 그 결과를 볼 수 있으며 → CI 3) 다시 Github 와 연결된 Heroku app 으로 자동 배포된다. → CD 즉, Local PC 에서 구현한 수정사항을 Github 에 push 하기만 하면, 빌드가 되고 - 더해서 Lint, Test 까지 하게 할 수 있으며 - 실제 서비스까지 업데..
개요 - golang dependency 관리를 위한 Go Modules 를 간략히 알아본다. - official 링크: https://github.com/golang/go/wiki/Modules- 참고링크 (라기보다는 이 링크를 따라 하였음)- 이 게시물은 개인의 정리차원이며 아래의 링크를 들여다보시길 추천함- https://goo.gl/hXbAQm * TMI. dependency 란? - app 이 동작하기 위해 필요한 모듈이나 라이브러리를 말한다. - app 만 덩그러니 있어서는 동작하지 않으니, dependency 관리가 필요하다. Go 1.11 Modules - Russ Cox 가 제안한 vgo project 가 패키지 버저닝을 위한 go 공식 프로젝트로 채택됨.- Go 1.11 버전 에 실험적..
개요 Windows 10 에서 WSL ((Windows Subsystem for Linux) 을 ConEmu 를 이용하여 본격적으로 써먹어본다. * WSL 과 ConEmu 는 은 설치되어 있는 것으로 가정한다. ConEmu 를 열면 WSL 이 똬악! Settings >> General 에서 {Bash::bash} 를 선택하면 된다. 시작 디렉토리를 정하고 싶다 Settgins >> Startup >> Task 에서 {Bash::bash} 를 선택해주고 --wsl 뒤에 -C~ 를 추가해준다. --wsl -C~ 여기서 ~ 는 리눅스에서의 홈 디렉토리를 가리키며 ~ 대신 원하는 디렉토리를 적어주면 ConEmu 를 실행했을때 이쪽 디렉토리에서 시작하게 된다. 이쁜 테마를 쓰고 싶다 기본적으로 제공하는 테마들도 ..
개요 아래 두 항목을 최대한 간단히 들여다 보려 함 1. WSL 에서 VIM 을 사용하려고 보니 7점대 version 이다. 최신 버전 설치하자 2. 최신버전 설치 가이드를 보니 apt-get 이 아니라 apt 를 쓰네? 이거 뭔지 함 들여다 보자. * (참고) WSL (Windows Subsystem for Linux) == Bash on Ubuntu on Windows vim 최신으로 update 하기 원문링크: https://itsfoss.com/vim-8-release-install/ TL;DR. 그냥 아래만 치면 된다. sudo add-apt-repository ppa:jonathonf/vim sudo apt update sudo apt install vim PPA란 무엇인가 - 링크: http..
개요 원문링크: https://medium.com/@xoen/golang-read-from-an-io-readwriter-without-loosing-its-content-2c6911805361* 음… 이건 거의 원문 번역이 되어 버리는 듯 합니다. 이런 상황을 가정해보자 1) HTTP Request 를 받았다. 2) Request 의 body 내용을 보고 이런저런 처리를 한 다음에3) 본격적인 처리를 하는 Controller 에게 Request body 를 넘겨주고 싶다. 시도와 낭패 Request body 를 byte string 으로 읽어내려면 ioutil.ReadAll() 을 쓰면 된다. var bodyBytes []byte if body != nil { bodyBytes, _ = ioutil.R..
개요 복습겸 생활코딩의 지옥에서 온 Git을 사흘간 출퇴근하며 정주행했다. Git 입문하시는 분들께는 좋은 자료라는 생각이 들었으며 개인적으로는 .git 폴더를 심지어 이고잉님 본인이 만드신 gistroy 로 분석해주시는 부분이 인상적이었다. 이에 기본적인 git 의 기능들을 실행하면서 .git 폴더내의 변화를 정리해보고 싶어졌음 - 입문하시는 분들 보다는 git 을 잘 쓰고 계신분들이 이런 내용을 한번 챙겨보시면 도움이 되시리라 싶다. (참고) 지옥에서 온 Git - 링크: https://opentutorials.org/course/2708 - 유튜브 링크: https://goo.gl/tSliKG - gistory: https://github.com/egoing/gistory .git 폴더 가볍게 둘러..

- Total
- Today
- Yesterday
- 오블완
- MCP
- 잡학툰
- middleware
- 독서후기
- bun
- API
- OpenAI
- notion
- agile
- ChatGPT
- clean agile
- solid
- 클린 애자일
- gocore
- backend
- 독서
- intellij
- 엉클 밥
- Echo
- postgres
- Bug
- websocket
- strange
- 인텔리제이
- 영화
- go
- golang
- 티스토리챌린지
- Gin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |