記事一覧

技術記事・日々の学びをまとめています。

ブログのシステムを移行した
ポエム 2022-06-14

ブログのシステムを移行した

bmf-techのブログ基盤を移行した記念の記事。WordPressからLaravel製の自作CMS、そしてGo製の自作CMSへと、3世代を経て進化してきたブログシステムの移行の経緯を振り返る。

#CMS

最新記事

達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践
パフォーマンス 2022-06-09

達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践

『達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践』の書評。ISUCONを題材に、計測から始めるWebアプリケーションのパフォーマンスチューニングを体系的に学べる一冊。ISUCONに参加するなら一度は読んでおきたい、実践的な内容。

#システムパフォーマンス#ISUCON#書評
ゼロからわかるファイナンス思考 働く人と会社の成長戦略
ビジネス 2022-04-27

ゼロからわかるファイナンス思考 働く人と会社の成長戦略

『ゼロからわかるファイナンス思考 働く人と会社の成長戦略』の書評。長期的な目線で企業価値の最大化を図る「ファイナンス思考」を、やさしく解説する一冊。目先の売上や利益にとらわれず、事業の成長に投資していく考え方の基礎をつかめる。

#会計#書評
PHP7.4からPHP8.1までの新機能をキャッチアップ
アプリケーション 2022-03-21

PHP7.4からPHP8.1までの新機能をキャッチアップ

PHPの知識が7.3で止まっていたため、8.1までに追加された新機能を駆け足でキャッチアップした記事です。型付きプロパティやアロー関数、Union型、match式、Attributes(アトリビュート)など、各バージョンで導入された主要な新機能を実例とともに整理します。

#PHP
legoでLet's encryptのSSL証明書をDNS-01方式で取得する
インフラストラクチャ 2022-01-18

legoでLet's encryptのSSL証明書をDNS-01方式で取得する

Conoha VPS上でAnsibleを使い、Let's EncryptのSSL証明書をDNS-01方式で取得しようとした際の手順をまとめた記事です。legoというACMEクライアントとConohaのAPIを連携させ、DNSのTXTレコードを使ったチャレンジで証明書を取得する方法を解説します。

#Let's Encrypt#Tips
Golangでロードバランサーを実装する
アプリケーション 2022-01-01

Golangでロードバランサーを実装する

ラウンドロビンで負荷分散するL4ロードバランサーをGoで一から自作してみた記事です。httputilを使ったリバースプロキシの仕組みや、ラウンドロビンによるスケジューリング、アクティブ・パッシブなヘルスチェックの実装を、構築例を通して解説します。

#Golang#ロードバランサー#ラウンドロビン
2021年の振り返りと来年の抱負
ポエム 2021-12-30

2021年の振り返りと来年の抱負

2021年の1年を振り返り、来年の抱負をまとめた記事。エンジニアとしての成長や、うまくいったこと・そうでなかったことをざっくりと総括し、2022年に向けて設定した目標を綴る。

#振り返りと抱負
コンテナで始めるモニタリング基盤構築
インフラストラクチャ 2021-12-18

コンテナで始めるモニタリング基盤構築

Docker環境のモニタリング基盤構築を解説。Prometheus・Grafana・Kibana・Fluentd・cadvisorでログとメトリクスを一元収集・可視化する実装ガイドです。

#Docker#Docker Compose#Elasticsearch#Grafana#Kibana#Prometheus#cadvisor#efk#fluentd#node-exporter
StreamYardでKeynoteの発表者ディスプレイを表示しながら配信する方法
ツール 2021-11-03

StreamYardでKeynoteの発表者ディスプレイを表示しながら配信する方法

StreamYardを使ってプレゼンをする機会があり、そのやり方をまとめたメモです。Keynoteの発表者ディスプレイ(ノートや次のスライドが見える画面)を手元に表示しつつ、再生中のスライドだけをStreamYardで配信・共有するために、ウインドウを分割して同時に活用する手順を紹介します。

#Keynote#StreamYard#Tips
net/httpでつくるHTTPルーター自作入門
アプリケーション 2021-10-24

net/httpでつくるHTTPルーター自作入門

Golangのnet/httpでHTTPルーター自作を解説。ルートマップ、URLパス解析、メソッド別ルーティング、パスパラメータの仕組みをステップバイステップで実装ガイドします。

#Golang#HTTP
ISUCON11に参加した
ポエム 2021-10-21

ISUCON11に参加した

3年連続・3度目の参加となったISUCON11の参加記録です。昨年と同じメンバーで挑んだ今回、pprofによるプロファイリングやalpによるアクセスログ解析、N+1クエリの解消、MySQLの最適化といった、取り組んだパフォーマンスチューニングの戦略を紹介します。

#ISUCON#ISUCON10
ECS on Fargate環境でDatadog APMを導入
インフラストラクチャ 2021-10-19

ECS on Fargate環境でDatadog APMを導入

ECS on Fargate環境でDatadog APMを導入し、PHP-FPM設定・datadog-php-tracerインストール・タスク定義の設定手順を実装例で提示。

#Amazon Web Service#Datadog#ECS#Fargate
AWSコンテナ設計・構築[本格]入門
インフラストラクチャ 2021-10-16

AWSコンテナ設計・構築[本格]入門

『AWSコンテナ設計・構築[本格]入門』の書評。AWSのコンテナ関連サービスについて、わかりやすく丁寧に解説してくれる一冊。実務でコンテナを運用する場面を想定した構成になっており、これからAWS上でコンテナ環境を設計・構築するエンジニアの入門書に適している。

#Amazon Web Service#書評
textlintとreviewdogを使ってCircleCIでテキスト校正する
アプリケーション 2021-10-09

textlintとreviewdogを使ってCircleCIでテキスト校正する

長文を執筆する際にテキスト校正を自動化したいと考え、textlintとreviewdogを使ってCircleCI上で校正を自動化した方法を解説する記事です。GitHubで管理しているテキストに対し、CI上でtextlintを実行し、その指摘をreviewdogでプルリクエストにフィードバックする構成を紹介します。

#CircleCI#npm#textlint
OAuth徹底入門 セキュアな認可システムを適用するための原則と実践
セキュリティ 2021-10-05

OAuth徹底入門 セキュアな認可システムを適用するための原則と実践

『OAuth徹底入門 セキュアな認可システムを適用するための原則と実践』の書評。OAuthについて詳しく解説した数少ない一冊。認可の原則から実践までを扱い、入門書を読んだあと、仕様書を読み込む前の橋渡しとして手元に置いておきたい。

#OAuth#書評
OAuth・OIDCへの攻撃と対策を整理して理解できる本(リダイレクトへの攻撃編)
セキュリティ 2021-10-05

OAuth・OIDCへの攻撃と対策を整理して理解できる本(リダイレクトへの攻撃編)

『OAuth・OIDCへの攻撃と対策を整理して理解できる本(リダイレクトへの攻撃編)』の書評。OAuthやOpenID Connectの基本的なセキュリティを、攻撃と対策の観点からやさしく整理してくれる一冊。リダイレクトにまつわる攻撃を題材に、勘所を理解できる。

#OAuth#OpenIDConnect#書評
雰囲気で使わずきちんと理解する!整理してOAuth2.0を使うためのチュートリアルガイド
セキュリティ 2021-10-05

雰囲気で使わずきちんと理解する!整理してOAuth2.0を使うためのチュートリアルガイド

『雰囲気で使わずきちんと理解する!整理してOAuth2.0を使うためのチュートリアルガイド』の書評。OAuth2.0を雰囲気で使うのではなく、仕組みを整理して理解するための入門書。読みやすく、OAuth2.0のフローを最初につかむのに適している。

#OAuth#認証#書評
OAuth2、OIDCのキャッチアップのための資料
アプリケーション 2021-10-05

OAuth2、OIDCのキャッチアップのための資料

OAuth2、OIDC、JWTといった認証・認可の標準仕様をキャッチアップするために読み漁った資料をまとめた記事です。OpenID Connect Coreなどの仕様書をはじめ、書籍や実装ガイドまで、これらの技術を理解するうえで参考になったリソースを紹介します。

#FIDO#IAM#LDAP#OAuth#OpenIDConnect#SAML#SSO#認可#認証#リンク集
Gitでコミットを分割する方法
アプリケーション 2021-10-05

Gitでコミットを分割する方法

Gitでコミットを分割する方法についてのメモです。git rebase -iやreset、addといったコマンドを組み合わせて、1つにまとまったコミットをより細かい粒度に分割し、レビュアーが読みやすい形に提案を整形するための手法を、実際のコマンド例とともに紹介します。

#Git
OAuth、OAuth認証、OpenID Connectの違いを整理して理解できる本
セキュリティ 2021-10-05

OAuth、OAuth認証、OpenID Connectの違いを整理して理解できる本

『OAuth、OAuth認証、OpenID Connectの違いを整理して理解できる本』の書評。混同されがちなOAuth、OAuth認証、OpenID Connectの違いを、入門者にもわかりやすく整理して解説する一冊。それぞれの役割と使いどころを理解する取っ掛かりになる。

#OAuth#OpenIDConnect#認証#認可#書評