jargon

Comparison

Microkernel architecturevsModular monolith

Microkernel architecture

the product is a small core that does almost nothing, and every feature anyone names is a plugin.

A minimal core system providing the mechanism, with all the actual features supplied as plug-in modules. Editors, browsers, CI systems and most extensible products are built this way. The hard part is never the loading — it is the plugin contract, because it becomes an API you cannot change once anyone has written against it.

Full entry →

Modular monolith

you kept the single deployable and made a module boundary something the build fails on when crossed.

A monolith with internal boundaries that are actually enforced — by module systems, build rules or tests — rather than merely intended. It gets you the ownership and reasoning benefits of separate services without the network, the deployment matrix or the distributed debugging. It is the usual right answer when someone proposes microservices for a fifteen-person company, because it makes the same boundary argument at a fraction of the operational cost.

Full entry →

Related comparisons