フラミナル

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

【新規ツール探し】ローカルマシンで仮想環境とコンテナを動かすFinchとは

記事作成日:2022/11/24 情報 名前 URL Github https://github.com/runfinch/finch 公式サイト デモサイト 開発母体 CNCF / AWS version 0.1.0 言語 Go 価格 無料 ライセンス Apache-2.0 license 情報 何ができるもの? 使い方 外部イメージの起動 build 利…

【新規ツール探し】開発・運用の情報を一元管理できるBackstageとは

記事作成日:2022/11/24 情報 名前 URL Github https://github.com/backstage/backstage 公式サイト https://backstage.io デモサイト Backstage Demo 開発母体 CNCF(元は Spotify) version 1.8.2 言語 TypeScript 価格 無料 ライセンス Apache-2.0 licens…

Go の Option パターンを generics と reflect でシンプルにしてみる

Goではインスタンスを生成する New に対していろんなパターンで作成をするために、よく Option パターンと呼ばれる書き方をします。 こんな感じです。(WithXXX で設定したい内容を付与できる) package main import ( "fmt" ) func main() { p := NewProduct(…

Open Saves をざっと眺める

Open Saves の概要: ゲーム向けのオープンソースのクラウドネイティブ ストレージ | Google Cloud Blog が紹介されていたのでみてみます。 開発チームが Cloud Storage 、Memorystore 、Firestore のいずれのストレージ ソリューションを使用するかについて…

Javaで-128~127のIntegerを==で比較するとtrueになる理由

以下のサイトで解説されています。 https://programming.guide/java/boxed-values-equality.html https://stackoverflow.com/questions/3131136/integers-caching-in-java Integer クラスでは -128〜127 の値の場合はJVM の起動時に上記の範囲の Integer オ…

【備忘】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 のインセ…