ISUCON13に1人チームで参加して14位になった

ISUCON13に参加してきた。 ISUCONは8からほぼ毎年参加しており、去年は参加できなかったので5回目の出場。 初出場の頃はスコアを出すこともできなかったものの、今年はついに例年の予選通過ラインを超えれてよかった。 やったこと リポジトリは こちら githu…

gofakeitを用いたダミーデータ生成

go でダミーデータを生成する機会があり、gofakeitgithub.com を使ったので備忘メモ。 基本的な使い方 READMEの通り。 いろいろなダミーデータが用意されているので、用意されているデータであればメソッドを呼び出すだけで生成できる。 gofakeit.Name() // …

ACID特性 by データ指向アプリケーションデザイン

ふわっと理解して忘れてを繰り返しているACID特性について 自分の理解を固めるために『データ指向アプリケーションデザイン』という書籍での説明(7.1節)を参考にまとめた。 tl;dr A: 原子性(atomic) マルチスレッドプログラミングの原子性とは関係ない、つま…

Oracle Database メモ

最近Oracle Database に触れる機会が増えているので、学んだことをメモしていく。 概要 version 現在のLTSは 19cで、21cもイノベーション・リリースとして本番でも使えるレベルのリリースとして提供されている模様。 12cの次は18cに飛んでたりする、その辺り…

モノリスからマイクロサービスへ: マイクロサービスを選択する理由

『モノリスからマイクロサービスへ』を読んだ マイクロサービスを選択する上での参考になりそうな情報があったのでメモ マイクロサービスを導入するためには明確な理由を持つべきであり、同じ結果を達成できる他の方法も踏まえて検討すべし、とした上で、2.2…

React の context API があれば redux は不要なのか

React hooksの登場とともに useContextが現れた当時、reduxは必要なくなる?と疑問に思って軽く調べた記憶がある。 当時は、mediumの記事 にたどり着いて hooksはreduxに取って代わるものではなく、必要であるのであれば変わらずredux導入しなさい、という結…

新規VPC内のEC2をインターネットに繋ぐ

AWS

これまでデフォルトVPCを利用したり、既にインフラエンジニアが作成してくれたVPCを利用してきており、 新しくVPC作ってインターネットに繋がるように設定したことがなかったので、自分で手を動かしてやっておく。 今まではこのようなチュートリアル的な内容…

JavaScript の Promise について

しばらく触れていないとすぐ忘れてしまうので Promise についてのメモを残しておく。 基本的には JavaScript Primer を読み返すと理解が早い。 Promise の状態 Promiseの状態 new Promise(executer) すると Pending 状態の Promise インスタンスが生成される…

Go の Must のついたメソッド

今日は Go について書きます。今回はさらっと。 github.com/jmoiron/sqlx を使っていて MustExec と Exec の違いなんだっけ、となったのでどんなメソッドに Must が付くか調べ直しました。 結論 先に結論です。 Must のついたメソッド: エラーが発生した場合…

Javaのアクセスレベル (public, protected, パッケージプライベート, private)の使い分け

前回、Javaの4つのアクセスレベルについて書きました。 今回はその4つのアクセスレベルをどう使い分ければ良いか書きたいと思います。 結論 要件を満たす中で、最小のアクセスレベルを選択する。 トップレベルのクラス 他のパッケージに公開する必要がある →…

Javaのアクセスレベル (public, protected, パッケージプライベート, private)

ブログを解説してから1ヶ月以上放置してしまいましたが、ようやく初記事です。 ちゃんと定期的に技術ブログできる人、尊敬です。 今回は Effective Javaを片手にJavaのアクセスレベルについて書こうと思います。 Effective Java は1年ほど前に会社の研修で読…

ブログ開設

技術のアウトプットのためにブログを書くことにしました。 サーバーサイドエンジニアとして調べた知識をまとめていくつもりです。 主にJavaやGo言語に関する内容がメインとなる予定です。 どこまで続くか分かりませんが、頑張ります。