Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
メモリ使用率取得したいけど、簡単に取得できない - 仕方ない作るか-MemStat.Net作りました
Search
Tomohisa Takaoka
October 26, 2024
330
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
メモリ使用率取得したいけど、簡単に取得できない - 仕方ない作るか-MemStat.Net作りました
メモリ使用率取得したいけど、簡単に取得できない - 仕方ない作るか。
1. メモリ使用率が欲しいとき
2. マルチプラットフォームの対応
3. Nugetでのリリース
4. まとめ
Tomohisa Takaoka
October 26, 2024
More Decks by Tomohisa Takaoka
See All by Tomohisa Takaoka
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.9k
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
1.4k
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
1.6k
Sekibanのコアを5言語で動かす ― イベントソーシング×WASMでやってみた | Running Sekiban's Core in 5 Languages — Event Sourcing × WASM
tomohisa
0
130
Sekiban + Microsoft Orleans のアクターをAWS対応しました / Sekiban + Microsoft Orleans actors are now supported on AWS.
tomohisa
0
200
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
2.8k
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
200
dnx で実行できるコマンド、作ってみました
tomohisa
0
290
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
8
42k
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
810
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
340
A Modern Web Designer's Workflow
chriscoyier
698
190k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Transcript
メモリ使⽤率取得したいけど、簡 単に取得できない - 仕⽅ない作る か。 MemStat.Net作りました #dotnetlab
⾃⼰紹介 高丘 知央 ( Tomohisa Takaoka ) 株式会社ジェイテックジャパンCTO イベントソーシング・CQRSフレームワーク Sekiban
メンテナ 鉄道指向プログラミングライブラリ ResultBox 開発 米国カリフォルニア州ロングビーチ在住(ロスの近く) • X : @tomohisa • Github : @tomohisa • Linkedin : tomohisatakaoka 自作キーボード、3Dプリント自作トラックボール製作 London Tech Talk ポッドキャストとブッククラブ出演 #dotnetlab 🆗
株式会社ジェイテックジャパンの紹介 • 創業50年を超えた総合IT企業、株式会社 ジャパンテクニカルソフトウェア (JTS) のグループ企業。 • New York 所在
J-Tech Creations, Inc. と 協業 • B2C / B2B アプリケーションを 開発‧運⽤するソフトウェア開発企業。 • .NET‧Azure 等 Microsoft の 技術スタックを主に使⽤。 #dotnetlab 🆗
概要 メモリ使⽤率取得したいけど、簡単に取得 できない - 仕⽅ない作るか。 1. メモリ使⽤率が欲しいとき 2. マルチプラットフォームの対応 3.
Nugetでのリリース 4. まとめ #dotnetlab 🆗
メモリ使⽤率取得したいけど、簡単に 取得できない - 仕⽅ない作るか。 1.メモリ使⽤率が欲しいとき
#dotnetlab 🆗 Sekiban - イベントソーシング・ CQRSフレームワーク • イベントソーシングは過去のイベントを再生してステートを作成する • 毎回データベース(Cosmos
DB, Dynamo DB or Postgres)にイベントを取りに 行くと遅い • イベントのローカルキャッシュ機能を作りたい • 無制限に保続したくない • → メモリの残量によってコントロールしたい • メモリ残量をマルチプラットフォームで知る機能が...ない • 仕方なく作るか。 メモリ使⽤率取得したいけど、簡単に取得できない - 仕⽅ない作るか。 1.メモリ使⽤率が欲しいとき
メモリ使⽤率取得したいけど、簡単に 取得できない - 仕⽅ない作るか。 2.マルチプラットフォームの対応
#dotnetlab 🆗 マルチプラットフォーム対応 • Windows(ローカル実行,Azure) Linux (Azure) Mac (ローカル実行)で対応した い
• Windows ◦ Microsoft.VisualBasic → なぜか使用できなくなっている ◦ 既存のGithub NickStrupat / ComputerInfo → Azure App Serviceで使え ない ◦ GlobalMemoryStatusEx を使う実装を発見 kernel32.dll メモリ使⽤率取得したいけど、簡単に取得できない - 仕⽅ない作るか。 2.マルチプラットフォームの対応
#dotnetlab 🆗 マルチプラットフォーム対応 • Mac ◦ vm_stat コマンドをプロセスで呼び出しパースする メモリ使⽤率取得したいけど、簡単に取得できない -
仕⽅ない作るか。 2.マルチプラットフォームの対応
#dotnetlab 🆗 マルチプラットフォーム対応 • Mac ◦ free コマンドをプロセスで呼び出しパースする ◦ この辺はChatGPT駆動でなんとかなった
メモリ使⽤率取得したいけど、簡単に取得できない - 仕⽅ない作るか。 2.マルチプラットフォームの対応
メモリ使⽤率取得したいけど、簡単に 取得できない - 仕⽅ない作るか。 3.Nugetでのリリース
#dotnetlab 🆗 とりあえず Sekiban内部のProjectとしていたが ... • LTするならみんなが簡単に使えるといいかも ◦ 慌ててnuget リリース
(午後3:30ごろ) https://www.nuget.org/packages/MemStat.Net • Azure App Serviceで使えるのを確認 • Azure Function • AWS メモリ使⽤率取得したいけど、簡単に取得できない - 仕⽅ない作るか。 3.Nugetでのリリース
メモリ使⽤率取得したいけど、簡単に 取得できない - 仕⽅ない作るか。 4.まとめ
まとめ • メモリ使⽤量は結構しれると嬉しい気がする • メモリ使⽤量を知らずして解放の必要性を知る⽅ 法があったら知りたい ◦ GCなど? • Nugetリリース慣れしたので、どんどんリリース
• よかったらご使⽤ください #dotnetlab 🆗
質問、感想などありましたらXなどで連絡ください @tomohisa Sekibanはこちら https://github.com/J-Tech-Japan/Sekiban ResultBoxはこちら https://github.com/J-Tech-Japan/ResultBoxes MemStat.Netはこちら https://www.nuget.org/packages/MemStat.Net J-Tech Japan
Tech Blog https://zenn.dev/p/jtechjapan_pub おわり #dotnetlab 🆗