Goで始めるコードのパフォーマンス改善
2023 Jun 12Makuake Advent Calendar 2022の9日目の記事です! Goで始めるコードのパフォーマンス改善 自作HTTP Routerのgoblinのパフォーマンス改善をしよう思った際に、Goのパフォーマンス改善について取り組んでみたので、その際のアプローチと実践した取り組みについて書く。 前提知識 より奥深いチューニングをする上ではもっと必要な知識があると思うが、最低限必要なことだけリ...
Makuake Advent Calendar 2022の9日目の記事です! Goで始めるコードのパフォーマンス改善 自作HTTP Routerのgoblinのパフォーマンス改善をしよう思った際に、Goのパフォーマンス改善について取り組んでみたので、その際のアプローチと実践した取り組みについて書く。 前提知識 より奥深いチューニングをする上ではもっと必要な知識があると思うが、最低限必要なことだけリ...
Makuake Advent Calendar 2022の6日目の記事です! 概要 最近スクラムチームのプロセス改善について頻繁に思いを馳せており、カイゼンのヒントが何か得られないだろうかと思ってアジャイルメトリクスを読んでみた。 アジャイルメトリクス 原著は多分Agile Metrics in Action。何年か前に出版された本。 アジャイルメトリクスとは? アジャイルメトリクスとは、アジャイ...
SOAとマイクロサービスの違いについて整理したくなったときに漁った記事の雑メモ。 aws.amazon.com - サービス指向アーキテクチャとは何ですか? www.talend.com - マイクロサービスとSOA:の違い 適したユースケースとは ja.wikipedia.org - エンタープライズ・サービス・バス www.xlsoft.com - API インフラストラクチャ: ESB と...
概要 Homebrewでインストールするパッケージで過去のバージョンを指定してインストールしたいときがたまにある。 Homebrewは最新版のみ保持する方針になったらしく、過去バージョンをインストールするときはひと手間かかったのでメモ。 やり方 今回vim9系からvim8系のダウングレードをしたかったので、そのときの手順を例に上げる。 手順は以下。 brew tap-new bmf-san/vim...
概要 ADR(Architecture Decision Record)について調べた。 ADRとは 2011年にMichael Nygardによって紹介されたアーキテクチャに関する決定事項を記録したドキュメントのこと。 cf. cognitect.com - DOCUMENTING ARCHITECTURE DECISIONS フォーマット Michael Nygardは提案するフォーマットは次...
概要 Design Docsについて調べてみた。 Design Docsとは Design Docsはソフトウェア設計のためのドキュメント。 決まった形式を持たず、プロジェクトにとって意味ある形で書くことをルールとしている Design Docsは開発プロセスにおいて、以下のようないくつかのメリットを持つ。 設計上の課題洗い出し、手戻りの軽減 設計について合意形成 横断的な関心事についての整理・...
SLI・SLO・SLAについて SLI・SLO・SLAについて色々調べてみたことをまとめる。 SLO・SLI・SLAとは何か SLO、SLI、SLAとは、サービスレベル(Service Level)に関わる指標、目標、合意のことである。 サービスレベルとは一定の期間内で提供されたサービスを特定の方法で測定して表したものである。 SLI(Service Level Indicator) サービスレ...
概要 先日認定スクラムマスターの研修を受けたのだが、スクラムマスターとプロダクトオーナーの違いについて改めて整理しておく必要があると感じたので、記事にする。 cf. 認定スクラムマスター(LSM)になった スクラムマスターとは 責任 スクラムの確立と有効性に責任を持つ スクラムが正しく実践されるようにスクラムの理論やプロセスをスクラムチームに理解してもらえるようにする スクラムチームがスクラム...
概要 GoでClean Architectureのレイヤーを静的解析する方法についてのメモ。 go-cleanarchを使う 静的解析のツールを自作しても良かったが、簡単に導入できるツールがあったのでこちらを使ってみた。 roblaszczak/go-cleanarch 自作CMSのgobel-apiに導入してみた。 cf. PR go install github.com/roblaszcza...
概要 Cloud Functionsを使ってSlack AppのSlash Commandを実装する。 今回作ったボイラープレートはこちら。 go-slack-app-on-cloud-functions-boilerplate Slash Commandの使えるSlack Appを作る方法は色々あるが、安く、簡単に、サーバーレスで作れるということでCloudFront Functionsを使って...