フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

【備忘】spanner の mutation と Statement DML のどちらを使うか

完全にメモ とあるソシャゲのAPIサーバで Spanner を使った。 このとき元々は Mutation を利用していたのだが、以下の理由で Statement DML に変えた。 もともと API サーバではクライアントからのリクエストを処理し、その結果に応じてミッションやアチーブ…

CloudFlareの記事を読んでTCPでIP固定の場合の挙動をまとめる(IP_BIND_ADDRESS_NO_PORT)

おっしゃるとおり、古典的な TCP/IP スタックの場合は、エフェメラルポートを確保してから connect(2) するので、クライアントとして同時接続数はポートの数に律速されます。一方で、linux の場合は IP_BIND_ADDRESS_NO_PORT というオプションがあり、これを…

浮動小数点演算について軽くまとめる

固定小数点 浮動小数点 という2種類の概念がある。 固定小数点 固定小数点は int(32bit) や long(64bit) といった固定桁数の中で表現可能な範囲で小数を表現する方式。そのためこの範囲の計算に収まる限りは誤差が発生しない。 ただし算術の結果、int や lon…

Seekable OCI (SOCI) をちょっと調べた

コンテナイメージを遅延読み込みする Seekable OCI の紹介 AWS が出してきた lazy loading に関する記事。 lazy loading は etargz あたりの話を前紹介したが、それとは異なるアプローチをしたのが SOCI とのこと。 blog.framinal.life 公式の説明によると s…

pflag がどのように args を取得しているのかを追う

Go の pflag パッケージってどうやって引数を処理してるんだろうが気になったので、ちょっと調べてみました。 引数を配列にして返すだけのコードを書いてみます。 package main import ( "fmt" flag "github.com/spf13/pflag" ) type Args struct { Paths []…

GitHub Pull Request で diff 結果が多すぎても表示させる

stackoverflow.com PR の末尾に .patch をつけるだけ https://github.com/JustinTulloss/zeromq.node/pull/47 だとしたら https://github.com/JustinTulloss/zeromq.node/pull/47.patch とする

The Graph は何を解決するのか?何が便利なのか?まとめてみた

はじめに&注意 対象読者 ブロックチェーンの課題とThe Graph が解決すること 背景 The Graph が解決すること The Graph の概念 The Graph のシステムアーキテクチャ データを貯める仕組み サブグラフ(SubGraph) とは クエリ関連の仕組み The Graph のインセ…

Google Professional Cloud Developer(PCD) に合格したので振り返り

スキル 勉強期間 勉強方法 感想 スキル インフラエンジニア歴 10年 得意領域:サーバ、k8s、セキュリティ、クラウド、IoTなど 持ってる資格 クラウド:AWS Solution Architect Professional / Google Cloud Architect Associate サーバ / NW:LPIC2 / ネスペ…

PodDisruptionBudget設定時にでる「Cannot evict pod as it would violate the pod's disruption budget.」の解消法

Pod に PodDisruptionBudget(PDB)設定時に以下のエラーがでました。 error when evicting pods/"nginx-deployment-bc88786fd-fq8wv" -n "pdb-test" (will retry after 5s): Cannot evict pod as it would violate the pod's disruption budget. この解消法に…

【Terraform】null_resourceでシーケンシャルなterraform リソース作成を実現する

Terraform 内のリソースにおいて depends_on という順序制御の仕組みがあります。しかし同じ module を複数呼び出す際に、シーケンシャルに実行したいケースがあるともいます。(私はありました) もちろん呼び出す module ごとに depends_on を書けば解決す…

格言でわかるITエンジニア「急がば回れ」

ことわざ・故事成語・慣用句などの格言が好きです。 人生の色んな場面で助けられてきました。 今回は 「急がば回れ」 という言葉をつかって、ITエンジニアの戒めを書いてみようと思います。 急がば回れとは - コトバンク ITエンジニアに例える 早く着こうと…

Solidity で同名の関数や変数名を継承したらどうなる?

変数と関数を上書きする 変数と関数を上書きする(多重継承) 変数と関数を上書きする(virtual利用) まとめ 変数と関数を上書きする override1 -> test override2 -> test の場合 override1.sol // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0.…