0時に寝て3時に起きて6時半に起きた。だいぶよく眠れるようになってきた。

サイトコントローラーの障害

お手伝いしている宿泊業のシステムでトラブルが発生している。厳密には外部サービスになるのだが、複数のオンライン予約サイトの違いを吸収して単一のインターフェースを提供する宿泊業のハブシステムのような存在をサイトコントローラーと呼ぶらしい。週明けから全国旅行支援という新しいGoToトラベルが開始されて、その予約が想定以上のトラフィックになっていてサイトコントローラーがダウンしてしまった。web 開発者向けに例えれば aws の s3 が落ちて大半のサービスに影響が出てなんもできないみたいな状況かな。

全国レベルのニュースになるぐらいの障害規模が大きいらしい。それだけユーザーが多いシステム/事業者なんだろうとは思う。システムと向き合う上で障害が発生するのは仕方ないが、フォールトトレランスは常に意識して設計・運用しないといけないことを、今回の障害を傍からみていて感じた。

java のちょっとした小技

java で1つのリストを複数のリストに分割したいときに List.subList というメソッドがある。複数の値を並行処理するときなど入力を分割するのに便利そう。使い方は次の通り。toIndex を超えると IndexOutOfBoundsException が投げられるのでそこだけ注意かな。

var total = myList.size();
var step = 20;
for (int i = 0; i < total; i += step) {
    var toIndex = i + step;
    if (toIndex > total) {
        toIndex = total;
    }
    var subList = myList.subList(i, toIndex);
    // do something
}

シャンプー

散髪屋さんのマスターからシャンプーを変えた方がいいんじゃないかとアドバイスされた。髪は油分と水分のバランスが大事らしく、シャンプーによって変わることもあるらしい。いつからか記憶にないけど、少なくとも学生時代から私はずっと メリット リンスのいらないシャンプー を使っている。20年ぐらい?こだわりがあるわけでもないし、このシャンプーを使っていて懸念があったことは一度もない。マスターから h&s scalp がよいとお勧めされた。せっかくの機会だから試してみようかなと思う。