v0.5.0 - Efficiency Audit
What's New
Version 0.5.0 includes the comprehensive Efficiency Audit (Epic #286) addressing server performance issues reported in #284.
Performance Improvements
| Feature | Impact |
|---|---|
| ποΈ Discovery data caching (30-min TTL) | Reduces redundant API calls for Next Up, Continue Watching, etc. |
| π WebSocket-aware library polling | Extends polling from 1h to 6h when WebSocket is active (~83% reduction) |
| π Request coalescing | Deduplicates simultaneous API calls (10-30% reduction) |
| π¦ Batch user count operations | Consolidates 4 user count calls into 1 parallel operation |
| βοΈ Configurable polling intervals | Users can now adjust polling via options flow |
| π API metrics collection | Diagnostics now track API call counts |
π« always_update=False on coordinators |
Prevents unnecessary entity state writes |
π PARALLEL_UPDATES on entity platforms |
Controls concurrent entity updates |
Before vs After
Before (v0.4.1):
- Discovery coordinator: 8 sequential API calls per user every 15 minutes
- Library coordinator: 1 API call every hour (even with active WebSocket)
- Concurrent identical requests: Each made separately
- Entity updates triggered on every coordinator refresh
After (v0.5.0):
- Discovery coordinator: 5 parallel API calls per user, cached for 30 minutes
- Library coordinator: 1 API call every 6 hours when WebSocket is active
- Concurrent identical requests: Coalesced into single call
- Entity updates only when data actually changes
Configuration
You can now adjust polling intervals via:
- Go to Settings β Devices & Services β Emby
- Click Configure on your integration
- Adjust Library Scan Interval (1-24 hours) and Server Scan Interval (5-60 minutes)
Issues Resolved
Full Changelog
- #288 - Discovery data caching with 30-minute TTL
- #289 - WebSocket-aware library polling
- #290 - Request coalescing for concurrent requests
- #291 - Batch user count API calls
- #292 - Configurable polling intervals via options flow
- #293 - API metrics collection
- #294 - Efficiency documentation
- #295 -
always_update=Falseon all coordinators - #296 -
PARALLEL_UPDATESon all entity platforms - #297 - Data-driven entity platform definitions
Full Changelog: v0.4.1...v0.5.0