kakts-log

programming について調べたことを整理していきます

2024-01-01から1年間の記事一覧

redis のsetのnxオプションについて

概要 redisでsetコマンドのnxオプションというものがあり setする際に、キーがまだ存在していない場合にのみ値をセットできるもので、redisによるロック処理に使われます。 このnxオプションについて調べてみます。 SET | Docs NX -- Only set the key if it…

Go: for rangeにおけるmapのイテレーション順序について

概要 Goにおけるfor rangeでmapをループさせる際のイテレーション順序について整理します。 Goにおいて、for rangeでmapの要素をループさせる際、イテレーションの順序は決まっていません。 これはGo言語の仕様で定められており、ループ順序を前提としたコー…

Goコンパイラによるコンパイル処理について整理

概要 Goのコンパイラにおいて、コンパイル時にいくつかのフェーズに分かれており、各フェーズについてざっと概要を整理します。 github.com Goコンパイラによるコンパイルでは、主に下記のようなフェーズをたどります。 - 字句解析 - 構文解析 - 型チェック …

SystemV メッセージキューの作成とipcsを用いたメッセージキューの確認方法

概要 System V メッセージキューは、Linuxにおけるプロセス間通信方法の一種で、メッセージ形式のデータをプロセス間でやり取りするのに使われます。 主に下記3つがあり、今回はメッセージキューについて扱います。 メッセージキュー セマフォ 共有メモリ 今…

開発におけるドキュメント運用の理想状態と課題

概要 開発におけるドキュメントの運用方法について、自分なりの理想状態についてまとめます。 簡単にまとめると以下の3つとなります。 ドキュメントが容易に見つかる ドキュメントの正確性 ドキュメントの抜け漏れがないこと 上から順に実行難易度が下がり、…