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
2
240
メモリ使用率取得したいけど、簡単に取得できない - 仕方ない作るか-MemStat.Net作りました
メモリ使用率取得したいけど、簡単に取得できない - 仕方ない作るか。
1. メモリ使用率が欲しいとき
2. マルチプラットフォームの対応
3. Nugetでのリリース
4. まとめ
Tomohisa Takaoka
October 26, 2024
Tweet
Share
More Decks by Tomohisa Takaoka
See All by Tomohisa Takaoka
.NET でアクターモデルをOrleansかDaprでやりたい
tomohisa
0
160
2年間の実運用を経て振り返るイベントソーシングの実際
tomohisa
4
1.2k
イベントソーシング・CQRSで、ドメイン駆動設計をシンプルかつ柔軟に実践する
tomohisa
7
7.7k
.NET Aspireの新機能を使ってみる
tomohisa
0
230
Functional Event Sourcing using Sekiban
tomohisa
0
170
DDDを突き詰めていったら、 イベントソーシングに 流れ着いた話
tomohisa
3
530
OSSの認証サービス Keycloak を.NETから使ってみた-Aspireとコンテナで使える簡単IDaaS
tomohisa
2
1.1k
そろそろイベントソーシング・CQRSを使ってみてもいい頃なんじゃない?
tomohisa
6
4.3k
関数型ドメインモデリングを 非関数型のプログラミング言語で やってみた
tomohisa
8
4.3k
Featured
See All Featured
Faster Mobile Websites
deanohume
305
30k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
950
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Building Applications with DynamoDB
mza
92
6.1k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Designing for Performance
lara
604
68k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Designing for humans not robots
tammielis
250
25k
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 🆗