タグ

2026年4月5日のブックマーク (3件)

  • Linux 7.0でPostgreSQL性能半減、修正困難か

    perfプロファイリングの結果、CPU時間の55%がPostgreSQLのユーザースペーススピンロック(s_lock)で消費されていることが判明した。PREEMPT_LAZY環境下で、ロック競合が劇的に悪化している。原因はプリエンプションモデルの制限問題の根源は、Linux 7.0のrc1で導入されたカーネルスケジューラの変更にある。Intelのカーネルエンジニア、ペーター・ジルストラが作成したコミットが、利用可能なプリエンプションモードを制限した。 従来、Linuxカーネルはサーバー向けに「PREEMPT_NONE」(プリエンプションなし)というモードを提供していた。スループット最大化を優先し、カーネルがタスクを途中で中断しない設計だ。データベースサーバーのように、CPUを長時間占有する処理には理想的なモードだった。 Linux 7.0では、x86やARM64などの主要アーキテクチャでP

    Linux 7.0でPostgreSQL性能半減、修正困難か
  • YAMLの変更点を見落とさない!diffより強力なYAML差分確認ツール『dyff』のすすめ | SIOS Tech Lab

    はじめに こんにちは、サイオステクノロジーの小野です。 Kubernetesを利用する中で、yamlファイルの差分を確認することがよくあります。 差分確認コマンドと言えばdiffコマンドが一般的ですが、yamlファイルは行単位ではなく設定単位で比較を行いたいケースが多いので、diffコマンドを使うのが難しいです。 そんな時に役立つdyffというツールをご紹介します。 dyffとは dyffはテキストの「行」ではなく「データ構造(意味)」に基づいてYAMLやJSONファイルを比較するコマンドラインツールです。 dyffは以下の特徴があります。 キーの順序を無視して比較 人間が読みやすい出力形式 ツール連携 dyffインストール方法 dyffのインストール方法について詳しくは公式のリポジトリを参照してください。 バイナリファイルを用いてインストールする場合、以下のように実行します。 $ cur

    YAMLの変更点を見落とさない!diffより強力なYAML差分確認ツール『dyff』のすすめ | SIOS Tech Lab
  • OTLPのspan nameが情報量少なすぎる件 - methaneのブログ

    OpenTelemetry 公式の Instrumentation ライブラリを使っていると、Requestsのspanの名前が "GET" だけだったり、 mysqlclient のspanが "SELECT" だけだったりします。 たとえばGrafanaでトレースを見ていると "SELECT" ばかりが何個も並んでいて、一つ一つクリックして attributes の db.statement を確認していかないとどのクエリを実行しているのか分かりません。非常に面倒です。 Flaskのspanであれば "GET /user/<id:int>" のように表示してくれるのに、なぜRequestsのspanの名前はtable名やpathを書いてくれないのでしょうか。それは OpenTelemetry の Semantic conventions でそう推奨されているからです。 HTTP spa

    OTLPのspan nameが情報量少なすぎる件 - methaneのブログ