Juju-62q's blog

参加記録やメモ書き、思考のまとめをしています

MySQLの外部キー制約とインデックス

f:id:Juju_62q:20200810153315p:plain

TL;DR

  • 外部キー制約をかけると暗黙的にインデックス が貼られる
  • 外部キー制約がある場合、該当カラムに対してインデックスをなくすことができない
  • ORMなどでマイグレーションの管理をしている場合などは気をつけよう
続きを読む

入社というやつをした

TL;DR

FROM: CyberAgent

TO: Timee

書くことと書かないこと

書くこと

  • こんなことやるという話
  • 挨拶

書かないこと

  • 入社理由
  • 退職理由
  • 前職の良いところとか悪いところ
  • 現職の良いところとか悪いところ

褒めるならいいじゃんという見方はできますが裏返しになりがちなので書きません。

続きを読む

Datadog Logsでklogをよしなに扱う

f:id:Juju_62q:20200414220621p:plain

TL;DR

klog_parser %{regex("[A-Z]"):klog_level}%{date("MMdd HH:mm:ss.SSSSSS"):date}\s+%{integer:thread_num}\s+%{data:file_name}\:%{integer:line}\]\s+%{data:msg}

これで

I0413 11:04:16.323941       1 main.go:176] Communication with server successful

これが

{
  "klog_level": "I",
  "date": 1586775856323,
  "thread_num": 1,
  "file_name": "main.go",
  "line": 176,
  "msg": "Communication with server successful"
}

こうなる。

続きを読む

社会人になって適当に自炊をこなすためにやってること

f:id:Juju_62q:20200406000650j:plain

これをいうと多くのソフトウェアエンジニアリングをしている同期には比較的驚かれますが、僕は自炊派です。 リモートワークでなかった頃の平日でも週3-4回は自炊していました。 1年も経つといかにして継続的に自炊を続けるのかというところに少しノウハウが溜まってきたのでまとめてみようと思います。 僕の自炊のテーマは継続可能性です。無理をするとやめちゃうので、それは困ります。 アフィリエイトはやってませんのでブログ経由で買い物をしても僕には一銭も入りませんのでその辺りはご安心くださいな。

TL;DR

  • 乾燥野菜、冷凍野菜は便利
  • 困ったときに食べるものを冗長化しておくと良い
  • 包丁を使わない料理をいくつか持っておくと良い
  • 加工済み食品は便利
続きを読む

マイクロサービス分割に着目してContinuous Deliveryを形作る

f:id:Juju_62q:20200402223336p:plain こんにちは。@Juju_62qです。

この記事はJAWS DAYS 2020で話す予定だった内容です。人によっては当たり前のようにできているのかもしれません。

まずは遅れてごめんなさい。本当はスライドは作ろうと思っていて途中まで作っていたのですが、喋らないと思うとどうにもやる気が出ず、一方できちんと形には残したいと言うことでブログに書くことにしました。 新卒1年目の学びを形に残す意味でもスライドについてはそのうち完成させたいと思っています。

このブログで出してる意見は完全に自分の意見なので異論反論同調意見あれば是非お聞かせください。

TL;DR

  • マイクロサービス -> イケてるアーキテクチャ、と言うわけではない
  • マイクロサービス分割はビジネス境界で行う
  • モノリシックにすることをイメージしてマイクロサービスアーキテクチャを設計する
  • サブシステムのどこを切り取ってもデプロイ可能なようにする
続きを読む

マイクロサービスを形式的に見てみる

f:id:Juju_62q:20200108235120p:plain

マイクロサービスについて考えていたら疲弊したので、少し技術者らしく形式的に見てダメのものを思考から削ぎ落としたいと思った。 グラフ理論などコンピュータサイエンスの基礎を交えて話をするが、基本的には当たり前のことしか言わないと思うのでここに書くことを意識せずとも暗黙的に実践している人も多いだろう。

なお、個人の意見でしかないのであっているか間違っているかはわからないし、筆者にこの記述に反した実装を否定する意図はない。 今回は適当に書き散らかすのでかなりテイストが違うが他のブログと同一人物が書いている。乗っ取り等ではないです。

TL;DR

  • マイクロサービスはDAGとすると考えやすいしデプロイしやすい
  • 閉路があるなら設計を見直した方がいい
  • DAGかどうかはサブシステムレベルでそれぞれ考えると簡単
  • デプロイに関係するリポジトリでは閉路がないことを意識させる設計にするといい
続きを読む