kenju's blog

About Programming and Mathematics

golang

会社ブログに Go x AWS で作ったログ基盤のアーキテクチャについて公開しました

書きました。 『cookpad storeTV の広告配信を支えるリアルタイムログ集計基盤』https://techlife.cookpad.com/entry/2018/10/18/100000 もしここらへんの技術に興味ある方がいらっしゃったら、ぜひ Twitter なりでご連絡ください。 こんにちは。最近 Go x A…

社内技術イベント"Hackarade"で Go で MinRuby の Interpreter を書いた

書いた。 https://github.com/kenju/go-minruby Background Cookpad 社内では、"Hackarade" と呼ばれる、全エンジニア参加を必須とする技術力向上イベントが有る。今年度第一回(トータルでは第四回)を迎える今回は、Ruby committer が講師を努めつつ、自分…

Run Multiple gRPC Load Testing using ghz

先日、gRPC server の負荷試験に、ghz が使えるという旨の記事を書きました。 "Great tool for benchmarking gRPC server - github.com/bojand/ghz" ghz の欠点は、複数の RPC を呼び出したいときに、複数の ghz binary を動かす必要がある点です。例えば、3…

Great tool for benchmarking gRPC server - github.com/bojand/ghz

While I am searching benchmarking tool for gRPC server, I found a really great tool with clean API: https://github.com/bojand/ghz Here is a working example repository for simple gRPC server/client and benchmarking test, written in Golang. …

Migrate from dep to Golang 1.11 Modules

Here is the complete document https://github.com/golang/go/wiki/Modules#modules How to merge from dep If you have already checked-in Gopkg.lock, just run below commands:n $ go mod init $ rm Gopkg.toml Gopkg.lock $ git add -A $ git commit -…

"Serverless Streaming Log Architecture ~ Theory & Practice ~" Presentation Slides

I had a talk at "adtech研究会", where we learn, discuss, and hands-on advertisement technology with other programmers from adtech companies in Tokyo. https://speakerdeck.com/kenju/serverless-streaming-log-architecture-theory-and-practice

Write Kinesis Firehose Lambda Translation Layer in Golang

You can use Lambda to convert data of Kinesis Data Firehose. This is the transformation process of ETL, and called "Data Transformation Flow" officially. https://docs.aws.amazon.com/firehose/latest/dev/data-transformation.html Data Structu…

Reading Notes of 5th Chapter of "Writing An Interpreter in Go"

Recently I have written a reading node blog post of "Writing An Interpreter in Go". http://itiskj.hatenablog.com/entry/2018/06/19/083208 After posting the article, I found that the author kindly publish a "lost" chapter - which is about im…

Reading Notes of "Writing An Interpreter in Go"

I have just finished reading & writing sample codes "Writing An Interpreter in Go". https://interpreterbook.com/ This is really a great book, especially because: You can write an interpreter from the scratch, with unit testing You can unde…

Introduction to go-groom library - grooming your local repositories every day

https://github.com/kenju/go-groom を作った。 作った理由は、 ghq で管理しているある特定のディレクトリに対して、一連のコマンドを実行したい 例えば、毎日 remote branch から最新の状態を持ってきてくれる bundle install とかもしてくれる Host ごと…

広告配信サーバーのGolang国内事例

Gunosy https://www.slideshare.net/SatoshiSatoshi1/ss-63362495 Pythonだった広告配信サーバーの入札ロジックをGoに置き換え Goのプロファイラにはpprof 関数ごとのCPU処理時間が計測できる https://github.com/google/pprof Pixiv https://speakerdeck.co…