Class MemoryBudgetResolver
java.lang.Object
io.leandev.appfuse.cache.core.MemoryBudgetResolver
記憶體預算解析器
依 ADR-011(supersede ADR-006)推導 CacheManager 的預設 offheap 記憶體預算:
- offheap:四段 fallback(明示 →
-XX:MaxDirectMemorySize× 75% → 確認 cgroup 真有上限的總量反推 → 固定 fallback 值 64MB)
heap 不再 byte 治理(一律筆數計、不納入 byte 預算):純 in-process 的 on-heap byte 封頂須靠 Ehcache sizeof 引擎,而該引擎在 JDK 25 已不可靠。真實 byte 封頂改由 offheap 承擔。
核心精神:封住行程總量、不確定性轉成保守行為——不拿可能是主機總量的數字算大預算。
- Since:
- 4.0
-
Method Summary
-
Method Details
-
resolve
解析記憶體預算(填入未明示的預設值)- Parameters:
explicitOffheapBudgetMB- 使用者明示的 offheap 預算(MB),null 則自動推導onExceed- 超額處置策略- Returns:
- 已解析的記憶體預算
-