2021-01-03 19:21:50
2020年の振り返りと来年の抱負年明けてしまったが書いておく。2020年は毎月振り返りのようなことをTrelloベースでやっていたので、書くつもりはなかったが、文字起こししておきたいことがあったので書く。
今年の振り返り去年のやつ。bmf-tech.com - 2019年の振り返りと来年の抱負
結構ざっくりした内容でこれを見ても何のコメントも浮かばないが、去年計画していたことはTrelloにすべて落としこんでいたので、振り返りはTrelloで完結するようになっている。
というわけでTrelloを見つつ、2020年やれたことを振り返ってみる。
アプリケーションURLルーターをつくった。趣味だが、...
ポエム
No Tags.
2020-12-20 00:20:51
概要この記事はMakuake Advent Calendar 2020の20日目の記事です。
TerraformとAnsibleを組み合わせてVPS上でサーバー構築をしてみたのでその手順をまとめておこうと思います。
動機趣味で開発しているアプリケーションのインフラ環境をIaCで整備したかったので、勉強を兼ねてTerraformを使ってみました。
環境
Terraform v0.14.0
Ansible 2.9.10
ConoHa VPS
macOS Catalina 10.15.5
ローカルでTerraformを実行してConoHa VPSにサーバーを建てたり、壊したりします。
OpenSt...
インフラストラクチャ
Ansible
VPS
OpenStack
Terraform
2020-11-14 14:20:07
概要docker-compose.ymlのserviceの1つにenv_fileを指定し、環境変数を設定したが、サービスがbuildするコンテナ内(Dockerfile側)では参照できなかった。vueのアプリケーションをコンテナ内でnpmを使ってビルドしており、アプリケーション側でprocess.env.VUE_APP_API_ENDPOINTという形でアプリケーションのビルド時に環境変数を参照させたかった。
解決策docker-compose.ymlで指定するenv_fileやenvironmentといったキーはコンテナのビルド後に参照できるようになるため、それらのキーを利用するだけではコン...
インフラストラクチャ
Docker
Docker Compose
2020-11-05 00:37:56
概要最近認証サービスの開発に携わっているので今一度基本的なことを再確認しておく意味でまとめる。
Software Design 2020 11月号の認証・認可の特集を参考にしている。
IDと認証・認可の関係性
ID
Identity(身元)
システム利用のための管理単位
ex. ユーザー、モノ、組織 etc...
Identifier(識別子)
データとして管理される単位
ex. SasS・SNS・他サービスなどで管理されるユーザーID
Attribute(属性)
Identifierを構成するそれぞれの情報
ex. Identityが人、Identifierがtaro_yam...
アプリケーション
FIDO
IAM
LDAP
OAuth
OpenIDConnect
SAML
SSO
認可
認証
2020-11-02 15:25:52
概要ネットワークに関して知識が曖昧なワードをまとめる。
IPv4
Internet Protocol version 4
IP(Internet Protocol)の一種
OSI参照モデルにおいてはネットワーク層に位置づけられるプロトコル
32ビットのアドレス空間を持つ
2の32乗=42億9496万7296個がIPv4のIPアドレス総数
インターネットの普及とともに枯渇してきた
cf.
wikipedia -IPv4
jprs.jp - 用語辞典 IPv4
IPv6
Internet Protocol version 6
IP(Internet Protocol)の一種
OSI参照モ...
ネットワーク
No Tags.
2020-10-30 02:49:52
概要 ISUCON環境を利用してシステムメトリクスをちゃんと見れるようなろうという勉強会を定期的に行っているので、そのまとめを残す。
Webエンジニアが知っておきたいインフラの基本 インフラの設計から構成、監視、チューニングまでを参考図書とし、第5章以降の内容を実際に手を動かして確認するような形で行っている。
環境はConohaでISUCON8のイメージを利用してサーバーを立てている。
プラン:メモリ 512MB/CPU 1Core
[root@160-251-16-96 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (C...
インフラストラクチャ
ISUCON
2020-10-20 01:20:34
概要Kubernetesを本格的にキャッチアップしていくためにドキュメントを読んだので、オレオレメモを残す。全部は長いのでメモ書きはコンセプトの章だけにする。
kubernetes.io
Kubernetesとは何か?cf. Kubernetesとは何か?
Kubernetesとは何か?
宣言的な構成管理
自動化の促進
コンテナ化されたワークロードやサービスの管理のためのプラットフォーム
過去を振り返ってみると
仮想化ができる前の時代におけるデプロイ (Traditional deployment)
物理サーバー上でのアプリケーションのリソース制限がない
リソース割当問題がある
スケール...
インフラストラクチャ
Docker
コンテナ
Kubernetes
2020-09-29 01:53:39
概要Golangのインメモリキャッシュのライブラリは良さそうなものが存在するが、軽量でシンプルなもので十分だったので自前で実装してみた。
実装要件
複数のデータを保持することができる。
期限付きのデータをメモリに保持することができる。期限が来たらメモリから破棄されること。
キャッシュへの同時参照、更新を考慮し、データのロックが意識されていること。
初期設計※github.com - bmf-san/go-snippets/architecture_design/cache/cache.goに置いてあるが、転載。
最初に思いついた感じで実装したもの。
package main
import...
アプリケーション
Golang
キャッシュ
2020-09-15 00:31:41
概要github.com - CodeReviewCommentsを読んでメモしておきたいことをまとめる。
Comment Sentences
コメントの終わりはピリオドで終わるようにする。
golang.org - commentary
Copying
別のパッケージから構造体をコピーするときは、予期しない参照に気を付ける。
メソッドがポインタの値に関連付けられているならTではなく*Tを使うようにする。
Crypt Rand
鍵の生成にmath/randを使ってはいけない。crypto/randのReaderを使う。
文字列として扱いたい場合は16進数かbase64エンコードする。...
アプリケーション
Golang
コードレビュー
2020-09-13 23:11:46
SCRUM BOOT CAMP THE BOOK
基礎編 スクラムってなに?
はじめに
アジャイル開発とは?
スクラムってなんだろう?
機能や要求を並べ替える
プロダクトの責任者は誰?
動作するプロダクトを開発する
短く区切って繰り返す
頻繁に計画する
スプリントごとに完成させていく
毎日状況を確認する
できあがったプロダクトを確認する
もっとうまくできるはず
縁の下の力持ち
まとめ
実践編 どうやればうまくいくの?
Scene No.00|開発したいものの概要と人物紹介|よし、始めようか!!
Scene No.01|ロールを現場にあてはめる|プロダクトオーナーは誰だ!?
Scene No...
本
アジャイル
スクラム