A Deep Dive Into OpenSearch Plugin Architecture and Introducing Hot...
summary
A prototype implements load/register/remove APIs to add plugin classes to the JVM, update mutable registries (analysis Registry changes from immutable maps to concurrent maps), and make plugin metadata dynamic so cat plugins shows installs without restart. It addresses classloader isolation, state management and memory cleanup, tests an analysis-plugin prototype, and classifies hot-reload feasibility across 27 plugin interfaces, marking network/cluster-level plugins as low feasibility. Work is partial, phased, and an RFC is coming.
AI-written summary · about
chapters (16)
- 0:00OpenSearch plugin architecture
- 1:05Plugins in OpenSearch
- 3:54Evolution of plugin system
- 5:21OpenSearch plugin types
- 7:29Using plugins in OpenSearch
- 11:21OpenSearch internal architecture
- 14:29Plugin service and loading
- 18:23Plugin installation limits
- 19:23Introducing hot reloading
- 21:30Hot reload goals
- 22:55Plugin loading mechanisms
- 24:20Current loading limits
- 27:55Core changes for hot reload
- 30:44Plugin types feasibility
- 32:50Hot reload implementation plan
- 33:34Q&A
related talks
16mPlugins: An internals deep dive
23mBuild plugins using Pluggy
49mBehold The Monolith: Understanding Microkernel Architecture
43mSpinnaker Plugins: Extending...
59mDecomposing Java applications
43mMonoliths to Modular: Navigating the Transition
33mPanel Session - Modularity Futures: OSGi and Java 9+
39mPlug-in Architectures With Layrry & Java Module System
