Post

2022-05-08 12:52:02

Githubでレジュメを管理するようにした

今までGoogle Driveで管理していたレジュメをGithubで管理するようにした。 これが個人的に良い取り組みだったので記事にしておく。 ここでいうレジュメは、自分のキャリアのあれこれがテキストベースでまとめられたものを指す。 モチベーションGoogle Driveでファイルをアップロードして管理していたが、イマイチ更新しづらかったり、更新する気力が沸かなかったりした。差分がわかりやすいようににしたり、気軽に公開できる方法のほうがより望ましいと考えていた。 レジュメ自体をそもそもなぜ管理するかというと、理由は2つある。  1つは、”キャリアの不安に対する備え”。自分のキャリアを定期的に棚...

ツール

Git GitHub

2022-04-03 14:07:30

Spannerの知見メモ

概要Cloud Spannerの知見を漁ったのでメモ。走り書きなのでカテゴライズしていない。 メモ 計画メンテナンスやスキーマ変更のためのダウンタイムなし、最大99.999%の可用性を保証 Cloud SQLはダウンタイムありの計画のメンテナンス Cloud Spannerのアーキテクチャ構成 クライアント R/Wするコードが実行されているサーバーやコンテナ クライアントライブラリを使うとgRPCやREST APIで通信できる ノード R/W処理を実行するコンピュートリソース ノードにはローカルストレージ(ディスク)はアタッチされていない データは分散ファイルシステム(インターナルネー...

データベース

Spanner

2022-03-25 23:55:57

エリック・エヴァンスのドメイン駆動設計を読んだ

概要DDD本を輪読会で読み終わったので読書メモを残す。 序章 ドメインモデルは”考え方”。知識の再構成と抽象化。表現手段(図でもプログラミング言語でも自然言語でも)は問わない。 モデルの基本的用法 モデルと設計の核心が相互に形成し合う モデルは、チームメンバ全員が使用する言語の基盤 モデルとは蒸留された知識 ソフトウェアの核心≒ドメインに関係した問題をユーザーのために解決する能力 第1章知識をかみ砕く 効果的なモデリングの要素 モデルと実装の結合、モデルに基づいた言語の洗練、知識豊富なモデルの開発、モデルの蒸留、ブレストと実験の繰り返し モデルにはビジネスの深い知識が反映されている、...

アプリケーション

DDD

2022-03-21 23:01:33

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

概要PHPの知識が7.3から止まっているので8.1までの新機能を駆け足でキャッチアップする。 PHP 7.3.x - PHP 7.4.x新機能型付きプロパティ<?php class Person { public int $age; // 指定の型だけ代入できるように強制される public string $name; } ?> アロー関数<?php // これが $a = 1 $func_7_3 = function($b) use ($a) { return $a + $b; } echo $func_7_3(1...

アプリケーション

PHP

2022-01-18 00:13:33

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

Conoha VPSでAnsibleを使ってLet's EncryptのSSL証明書の取得を行おうとしていた。 証明書の取得はDNS-01方式(ドメインのTXTレコードに認証局が発行したワンタイムトークンを登録して検証する)で取得したかったので、ConohaのAPIを使って、TXTレコードを登録、削除するようなスクリプトを組んで対応(cf. github.com - k2snow/letsencrypt-dns-conoha)していたが、スクリプトの管理が面倒だったので、もっと単純なやり方を模索していたところ、go-acme/legoというLets' Encryptのクライアン...

インフラストラクチャ

Let's Encrypt

2022-01-10 00:14:51

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

2021年の振り返りと来年の抱負去年のやつ。2020年の振り返りと来年の抱負 今年も振り返りを書いておこうと思うが、年々面倒になってきたのでざっくりにかく。 良い買い物2021は自分の人生で一番出費があった年だったと思う。 結婚式(プライスレス?) 引っ越し(骨を埋めても良いと思える街に引っ越した。すごく気に入っている) 車(安い中古車。ディーラーが値引きしてくれてお手頃に買えた。ポルシェに乗りたいという夢はあるが、これはこれで気に入っている。) M1 Mac(Air買った) オフィスチェア(ちょっといいやつ) あと何か色々細々としたものを買ったような気がする。 どちらかといえばケチなタイ...

ポエム

No Tags.

2022-01-01 23:48:34

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

概要この記事はMakuake Advent Calendar 2021の24日目の記事です。(大遅刻しました・・)ラウンドロビンで負荷分散するロードバランサーをGolangで自作してみるという話です。 ロードバランサーとは何かロードバランサーはリクエストを複数のサーバーへ振り分けて負荷分散する(ロードバランシング)機能を持ったサーバーです。 サービスの可用性を高めてくれるリバースプロキシの一種です。ロードバランサーの種類は大きく分けて2種類あります。アプリケーション層で負荷分散するL7ロードバランサーと、トランスポート層で負荷分散するL4ロードバランサーです。ロードバランサーは、ロードバラン...

アプリケーション

Golang Load Balancer Round Robin

2021-12-18 04:11:49

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

この記事はMakuake Advent Calendar 2021の17日目の記事です。 気づけば入社して丸3年が経ち、会社のアドベントカレンダーも3回目の参戦です。 ここ1年はRe-ArchitectureチームというMakuakeのサービス基盤の開発・運用を行うチームに所属し、色々と奮闘してきました。 来年もきっとあれこれと奮闘するでしょう。 Re-Architectureチームの求人はこちら。【Go/マイクロサービス】「Makuake」の基盤を刷新するRe-Architectureチームのエンジニア募集! さて、今年の一本目の記事(24日にもう一本かく、たぶん)は「コンテナで始めるモニタ...

インフラストラクチャ

Docker Docker Compose elasticsearch grafana kibana prometheus cadvisor efk fluentd node-exporter

2021-11-03 23:00:46

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

概要StreamYardを使ってプレゼンする機会があったのでやり方をメモしておく。 Keynoteの発表者ディスプレイを表示しつつ、再生中のスライドだけをStreamYardで共有する方法について手順をまとめる。 必要なものディスプレイが2枚必要。 手順 Keynoteでプレゼン資料を開く。ウインドウで再生をクリック。 再生中のウインドウ画面右上、発表者ディスプレイをウインドウで表示。 発表者ディスプレイが表示されるので確認。 StreamYardでShare > Share Screen > ウインドウと進み、再生中のスライドショーを共有する。 再生中のスライドショ...

ツール

Keynote StreamYard

2021-10-30 08:36:18

OAuth2.0・OIDCのキャッチアップ関連資料

概要OAuth2、OIDCのキャッチアップで読み漁った資料など。 仕様書OIDC OpenID Connect Core 1.0 incorporating errata set 1 OpenID Connect Dynamic Client Registration 1.0 incorporating errata set 1 OAuth 2.0 Multiple Response Type Encoding Practices OAuth 2.0 Form Post Response Mode OpenID Connect RP-Initiated Logout 1.0 - draft 0...

コンピューターアーキテクチャ

OIDC 認可 認証 OAut