Long story short - I would like to make a web application, solely for self-education purposes, that should allow user to add additional functionalities via plugins - just like Jenkins - https://jenkins.io/doc/book/managing/plugins/ - which does it via extension points.
But beside that, at the same time I would like each of the plugin itself to be a self sustainable process on an arbitrary host, arbitrary technology stack, to be scalable and not be able to affect host with core systems anyhow, which already feels more like a microservice.
The main points to me are:
Plugins to be add/removed on fly via web UI;
Plugins to sit arbitrary on the same host as core, or any other
host;Plugins to be scalable both on I/O and performance;
Plugins to be written with arbitrary technology and only required to follow some basic contract to expose its functionality and available settings/controls to the core.
My brain was capable to produce only such a simple idea https://svgshare.com/s/FSo
So in the end of the day I have a feeling like I am trying to reinvent the wheel here, and there are ready solutions either in plugins or microservices architectures that cover these requirements - are there any really?