Repository navigation
Expand file tree
/
Copy patharchitecture.html
More file actions
39 lines (37 loc) · 49.7 KB
/
Copy patharchitecture.html
File metadata and controls
39 lines (37 loc) · 49.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<!DOCTYPE html>
<html lang="en-US" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Architecture | Microsphere Projects</title>
<meta name="description" content="The five-layer architecture of Microsphere Projects, dependency flow, cross-cutting capability map and a typical request path">
<meta name="generator" content="VitePress v1.6.4">
<link rel="preload stylesheet" href="/assets/style.CGs2xtrI.css" as="style">
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
<script type="module" src="/assets/app.BqcDY_M_.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/theme.Va-Qxjo6.js">
<link rel="modulepreload" href="/assets/chunks/framework.CV8GZ7IB.js">
<link rel="modulepreload" href="/assets/architecture.md.BK7n2llr.lean.js">
<meta name="theme-color" content="#7c5cf0">
<meta property="og:type" content="website">
<meta property="og:title" content="Microsphere Projects">
<meta property="og:description" content="A layered enhancement system for the Java and Spring ecosystem. 36 repositories, 32 documented sub-projects.">
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-5d98c3a5><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0b0ada53></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0b0ada53>Skip to content</a><!--]--><!----><header class="VPNav" data-v-5d98c3a5 data-v-ae24b3ad><div class="VPNavBar" data-v-ae24b3ad data-v-6aa21345><div class="wrapper" data-v-6aa21345><div class="container" data-v-6aa21345><div class="title" data-v-6aa21345><div class="VPNavBarTitle has-sidebar" data-v-6aa21345 data-v-1168a8e4><a class="title" href="/" data-v-1168a8e4><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo.svg" alt data-v-8426fc1a><!--]--><span data-v-1168a8e4>Microsphere Projects</span><!--[--><!--]--></a></div></div><div class="content" data-v-6aa21345><div class="content-body" data-v-6aa21345><!--[--><!--]--><div class="VPNavBarSearch search" data-v-6aa21345><!----></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-6aa21345 data-v-dc692963><span id="main-nav-aria-label" class="visually-hidden" data-v-dc692963> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Home</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/architecture" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Architecture</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/projects/" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Projects</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/guide/getting-started" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Guide</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/ecosystem" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Ecosystem</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/community" tabindex="0" data-v-dc692963 data-v-e56f3d57><!--[--><span data-v-e56f3d57>Community</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-6aa21345 data-v-88af2de4 data-v-cf11d7a2><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-cf11d7a2><span class="text" data-v-cf11d7a2><span class="vpi-languages option-icon" data-v-cf11d7a2></span><!----><span class="vpi-chevron-down text-icon" data-v-cf11d7a2></span></span></button><div class="menu" data-v-cf11d7a2><div class="VPMenu" data-v-cf11d7a2 data-v-b98bc113><!----><!--[--><!--[--><div class="items" data-v-88af2de4><p class="title" data-v-88af2de4>English</p><!--[--><div class="VPMenuLink" data-v-88af2de4 data-v-35975db6><a class="VPLink link" href="/zh/architecture" data-v-35975db6><!--[--><span data-v-35975db6>简体中文</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-6aa21345 data-v-6c893767><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-6c893767 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-6aa21345 data-v-0394ad82 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/microsphere-projects" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-bd121fe5><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-6aa21345 data-v-bb2aa2f0 data-v-cf11d7a2><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-cf11d7a2><span class="vpi-more-horizontal icon" data-v-cf11d7a2></span></button><div class="menu" data-v-cf11d7a2><div class="VPMenu" data-v-cf11d7a2 data-v-b98bc113><!----><!--[--><!--[--><div class="group translations" data-v-bb2aa2f0><p class="trans-title" data-v-bb2aa2f0>English</p><!--[--><div class="VPMenuLink" data-v-bb2aa2f0 data-v-35975db6><a class="VPLink link" href="/zh/architecture" data-v-35975db6><!--[--><span data-v-35975db6>简体中文</span><!--]--></a></div><!--]--></div><div class="group" data-v-bb2aa2f0><div class="item appearance" data-v-bb2aa2f0><p class="label" data-v-bb2aa2f0>Appearance</p><div class="appearance-action" data-v-bb2aa2f0><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-bb2aa2f0 data-v-5337faa4 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-5337faa4></span><span class="vpi-moon moon" data-v-5337faa4></span><!--]--></span></span></button></div></div></div><div class="group" data-v-bb2aa2f0><div class="item social-links" data-v-bb2aa2f0><div class="VPSocialLinks social-links-list" data-v-bb2aa2f0 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://github.com/microsphere-projects" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-bd121fe5><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-6aa21345 data-v-e5dd9c1c><span class="container" data-v-e5dd9c1c><span class="top" data-v-e5dd9c1c></span><span class="middle" data-v-e5dd9c1c></span><span class="bottom" data-v-e5dd9c1c></span></span></button></div></div></div></div><div class="divider" data-v-6aa21345><div class="divider-line" data-v-6aa21345></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-5d98c3a5 data-v-a6f0e41e><div class="container" data-v-a6f0e41e><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-a6f0e41e><span class="vpi-align-left menu-icon" data-v-a6f0e41e></span><span class="menu-text" data-v-a6f0e41e>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-a6f0e41e data-v-8a42e2b4><button data-v-8a42e2b4>Back to top</button><!----></div></div></div><aside class="VPSidebar" data-v-5d98c3a5 data-v-319d5ca6><div class="curtain" data-v-319d5ca6></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-319d5ca6><span class="visually-hidden" id="sidebar-aria-label" data-v-319d5ca6> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-c40bc020><section class="VPSidebarItem level-0 has-active" data-v-c40bc020 data-v-b3fd67f8><div class="item" role="button" tabindex="0" data-v-b3fd67f8><div class="indicator" data-v-b3fd67f8></div><h2 class="text" data-v-b3fd67f8>Overview</h2><!----></div><div class="items" data-v-b3fd67f8><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b3fd67f8><div class="item" data-v-b3fd67f8><div class="indicator" data-v-b3fd67f8></div><a class="VPLink link link" href="/" data-v-b3fd67f8><!--[--><p class="text" data-v-b3fd67f8>Home</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b3fd67f8><div class="item" data-v-b3fd67f8><div class="indicator" data-v-b3fd67f8></div><a class="VPLink link link" href="/architecture" data-v-b3fd67f8><!--[--><p class="text" data-v-b3fd67f8>Architecture</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b3fd67f8><div class="item" data-v-b3fd67f8><div class="indicator" data-v-b3fd67f8></div><a class="VPLink link link" href="/ecosystem" data-v-b3fd67f8><!--[--><p class="text" data-v-b3fd67f8>Ecosystem</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-5d98c3a5 data-v-1428d186><div class="VPDoc has-sidebar has-aside" data-v-1428d186 data-v-39a288b8><!--[--><!--]--><div class="container" data-v-39a288b8><div class="aside" data-v-39a288b8><div class="aside-curtain" data-v-39a288b8></div><div class="aside-container" data-v-39a288b8><div class="aside-content" data-v-39a288b8><div class="VPDocAside" data-v-39a288b8 data-v-3f215769><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-3f215769 data-v-a5bbad30><div class="content" data-v-a5bbad30><div class="outline-marker" data-v-a5bbad30></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-a5bbad30>On this page</div><ul class="VPDocOutlineItem root" data-v-a5bbad30 data-v-b933a997><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-3f215769></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-39a288b8><div class="content-container" data-v-39a288b8><!--[--><!--]--><main class="main" data-v-39a288b8><div style="position:relative;" class="vp-doc _architecture" data-v-39a288b8><div><h1 id="architecture" tabindex="-1">Architecture <a class="header-anchor" href="#architecture" aria-label="Permalink to "Architecture""></a></h1><p>This page consolidates the capabilities of all <strong>32 sub-projects</strong> into a single picture. The whole architecture follows one rule: <strong>each layer depends only on the layers below it, while cross-cutting capabilities plug into every layer.</strong></p><div class="arch" data-v-01106c4c><div class="arch__legend" data-v-01106c4c><span class="arch__hint" data-v-01106c4c><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-01106c4c><circle cx="11" cy="11" r="7" data-v-01106c4c></circle><path d="M20 20l-3.5-3.5" stroke-linecap="round" data-v-01106c4c></path></svg> Hover or click any module to see where it sits in the ecosystem</span><!----></div><div class="arch__stack" data-v-01106c4c><!--[--><div class="band--foundation band" data-v-01106c4c><div class="band__rail" data-v-01106c4c><span class="band__code" data-v-01106c4c>L0</span><span class="band__title" data-v-01106c4c>L0 · Foundation</span></div><div class="band__body" data-v-01106c4c><!--[--><a class="chip" href="/projects/microsphere-build" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Build</span><!----></a><a class="chip" href="/projects/microsphere-bom" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>BOM</span><!----></a><!--]--></div><div class="band__flow" aria-hidden="true" data-v-01106c4c><svg width="26" height="34" viewBox="0 0 26 34" data-v-01106c4c><path d="M13 2v24" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-dasharray="3 4" data-v-01106c4c></path><path d="M7 22l6 7 6-7" stroke="currentColor" stroke-width="1.6" fill="none" stroke-linecap="round" stroke-linejoin="round" data-v-01106c4c></path></svg></div></div><div class="band--runtime band" data-v-01106c4c><div class="band__rail" data-v-01106c4c><span class="band__code" data-v-01106c4c>L1</span><span class="band__title" data-v-01106c4c>L1 · Runtime</span></div><div class="band__body" data-v-01106c4c><!--[--><a class="chip--star chip" href="/projects/microsphere-java" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Java</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 104</span></a><a class="chip--star chip" href="/projects/microsphere-java-enterprise" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Java EE</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 14</span></a><a class="chip" href="/projects/microsphere-jakarta" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Jakarta</span><!----></a><a class="chip" href="/projects/microsphere-logging" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Logging</span><!----></a><a class="chip" href="/projects/microsphere-microprofile" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>MicroProfile</span><!----></a><a class="chip" href="/projects/microsphere-test" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Test</span><!----></a><a class="chip" href="/projects/microsphere-tools" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Tools</span><!----></a><!--]--></div><div class="band__flow" aria-hidden="true" data-v-01106c4c><svg width="26" height="34" viewBox="0 0 26 34" data-v-01106c4c><path d="M13 2v24" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-dasharray="3 4" data-v-01106c4c></path><path d="M7 22l6 7 6-7" stroke="currentColor" stroke-width="1.6" fill="none" stroke-linecap="round" stroke-linejoin="round" data-v-01106c4c></path></svg></div></div><div class="band--framework band" data-v-01106c4c><div class="band__rail" data-v-01106c4c><span class="band__code" data-v-01106c4c>L2</span><span class="band__title" data-v-01106c4c>L2 · Framework</span></div><div class="band__body" data-v-01106c4c><!--[--><a class="chip--star chip" href="/projects/microsphere-spring" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Spring</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 61</span></a><a class="chip--star chip" href="/projects/microsphere-spring-cloud" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Spring Cloud</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 33</span></a><a class="chip--star chip" href="/projects/microsphere-spring-boot" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Spring Boot</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 24</span></a><!--]--></div><div class="band__flow" aria-hidden="true" data-v-01106c4c><svg width="26" height="34" viewBox="0 0 26 34" data-v-01106c4c><path d="M13 2v24" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-dasharray="3 4" data-v-01106c4c></path><path d="M7 22l6 7 6-7" stroke="currentColor" stroke-width="1.6" fill="none" stroke-linecap="round" stroke-linejoin="round" data-v-01106c4c></path></svg></div></div><div class="band--integration band" data-v-01106c4c><div class="band__rail" data-v-01106c4c><span class="band__code" data-v-01106c4c>L3</span><span class="band__title" data-v-01106c4c>L3 · Integration</span></div><div class="band__body" data-v-01106c4c><!--[--><a class="chip" href="/projects/microsphere-gateway" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Gateway</span><!----></a><a class="chip" href="/projects/microsphere-dubbo" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Dubbo</span><!----></a><a class="chip" href="/projects/microsphere-redis" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Redis</span><!----></a><a class="chip" href="/projects/microsphere-alibaba-druid" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Alibaba Druid</span><!----></a><a class="chip" href="/projects/microsphere-alibaba-sentinel" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Alibaba Sentinel</span><!----></a><a class="chip" href="/projects/microsphere-nacos" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Nacos</span><!----></a><a class="chip" href="/projects/microsphere-netflix" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Netflix</span><!----></a><a class="chip" href="/projects/microsphere-resilience4j" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Resilience4j</span><!----></a><a class="chip" href="/projects/microsphere-tomcat" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Tomcat</span><!----></a><a class="chip" href="/projects/microsphere-mybatis" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>MyBatis</span><!----></a><a class="chip" href="/projects/microsphere-etcd" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>etcd</span><!----></a><a class="chip" href="/projects/microsphere-hibernate" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Hibernate</span><!----></a><!--]--></div><div class="band__flow" aria-hidden="true" data-v-01106c4c><svg width="26" height="34" viewBox="0 0 26 34" data-v-01106c4c><path d="M13 2v24" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-dasharray="3 4" data-v-01106c4c></path><path d="M7 22l6 7 6-7" stroke="currentColor" stroke-width="1.6" fill="none" stroke-linecap="round" stroke-linejoin="round" data-v-01106c4c></path></svg></div></div><div class="band--crosscutting band" data-v-01106c4c><div class="band__rail" data-v-01106c4c><span class="band__code" data-v-01106c4c>L4</span><span class="band__title" data-v-01106c4c>L4 · Cross-cutting</span></div><div class="band__body" data-v-01106c4c><!--[--><a class="chip--star chip" href="/projects/microsphere-i18n" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>i18n</span><span class="chip__star" data-v-01106c4c><svg width="11" height="11" viewBox="0 0 24 24" fill="currentColor" data-v-01106c4c><path d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.3 5.9 20.6l1.4-6.8L2.2 9.1l6.9-.8L12 2z" data-v-01106c4c></path></svg> 13</span></a><a class="chip" href="/projects/microsphere-devops" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>DevOps</span><!----></a><a class="chip" href="/projects/microsphere-multiactive" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Multiactive</span><!----></a><a class="chip" href="/projects/microsphere-observability" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Observability</span><!----></a><a class="chip" href="/projects/microsphere-dynamic" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Dynamic</span><!----></a><a class="chip" href="/projects/microsphere-security" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Security</span><!----></a><a class="chip" href="/projects/microsphere-configuration" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>Configuration</span><!----></a><a class="chip" href="/projects/microsphere-ai" data-v-01106c4c><span class="chip__dot" data-v-01106c4c></span><span class="chip__name" data-v-01106c4c>AI</span><!----></a><!--]--></div><!----></div><!--]--></div><!----></div><h2 id="dependency-flow" tabindex="-1">Dependency flow <a class="header-anchor" href="#dependency-flow" aria-label="Permalink to "Dependency flow""></a></h2><p>Dependencies point strictly downward — no layer ever depends on a layer above it:</p><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>L4 Cross-cutting observability · i18n · security · dynamic · multiactive · configuration</span></span>
<span class="line"><span> ↓ weave in (pluggable, no compile-time dependency)</span></span>
<span class="line"><span>L3 Integration gateway · nacos · redis · mybatis · hibernate · druid</span></span>
<span class="line"><span> sentinel · resilience4j · netflix · dubbo · tomcat · etcd</span></span>
<span class="line"><span> ↓ depends on</span></span>
<span class="line"><span>L2 Framework microsphere-spring · microsphere-spring-boot · microsphere-spring-cloud</span></span>
<span class="line"><span> ↓ depends on</span></span>
<span class="line"><span>L1 Runtime microsphere-java · logging · java-enterprise · jakarta · microprofile</span></span>
<span class="line"><span> ↓ depends on</span></span>
<span class="line"><span>L0 Foundation microsphere-build (parent POM) · microsphere-bom (version governance)</span></span></code></pre></div><p>This chain delivers three concrete benefits:</p><ol><li><strong>Trimmable</strong> — using <code>microsphere-java</code> alone pulls in no Spring dependency whatsoever.</li><li><strong>Consistent versions</strong> — every layer shares L0's build baseline and version governance, so repositories never drift.</li><li><strong>Non-intrusive cross-cutting capabilities</strong> — L4 weaves in through interception pipelines and events, so observability and resilience arrive without touching business code.</li></ol><h2 id="layer-responsibilities" tabindex="-1">Layer responsibilities <a class="header-anchor" href="#layer-responsibilities" aria-label="Permalink to "Layer responsibilities""></a></h2><table tabindex="0"><thead><tr><th>Layer</th><th>Responsibility</th><th>Key constraint</th></tr></thead><tbody><tr><td><strong>L0 Foundation</strong></td><td>Maven parent POM, plugin versions, profiles and BOM governance</td><td>Covers five Java TLS versions: 8 / 11 / 17 / 21 / 25</td></tr><tr><td><strong>L1 Runtime</strong></td><td>Framework-free Java capabilities: utilities, reflection, type conversion, events, logging abstraction</td><td>Must not depend on Spring or any application framework</td></tr><tr><td><strong>L2 Framework</strong></td><td>Enhancements for Spring, Spring Boot and Spring Cloud</td><td>Must stay a drop-in additive enhancement that never changes default behaviour</td></tr><tr><td><strong>L3 Integration</strong></td><td>Adapters for concrete infrastructure: registries, data access, caching, RPC, resilience</td><td>Hooks in via interception and extension points, never touching business code</td></tr><tr><td><strong>L4 Cross-cutting</strong></td><td>Observability, i18n, security, dynamic configuration, multi-active routing</td><td>Woven in via SPI and events, individually switchable</td></tr></tbody></table><h2 id="cross-cutting-capability-map" tabindex="-1">Cross-cutting capability map <a class="header-anchor" href="#cross-cutting-capability-map" aria-label="Permalink to "Cross-cutting capability map""></a></h2><p>Regrouping sub-project features by <strong>capability domain</strong> shows how one theme is distributed across the ecosystem:</p><h3 id="configuration-dynamism" tabindex="-1">Configuration dynamism <a class="header-anchor" href="#configuration-dynamism" aria-label="Permalink to "Configuration dynamism""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-spring">Spring</a></td><td><code>@ResourcePropertySource</code> with wildcards, inheritance and <code>autoRefreshed</code>; <code>@YamlPropertySource</code> / <code>@JsonPropertySource</code></td></tr><tr><td><a href="/projects/microsphere-spring-cloud">Spring Cloud</a></td><td>Responds to <code>EnvironmentChangeEvent</code> by refreshing OpenFeign encoders, decoders, retryers and interceptors</td></tr><tr><td><a href="/projects/microsphere-spring-boot">Spring Boot</a></td><td><code>BindListener</code> fires when <code>@ConfigurationProperties</code> values change; <code>microsphere.autoconfigure.exclude</code> uses merge semantics</td></tr><tr><td><a href="/projects/microsphere-i18n">i18n</a></td><td>Runtime message updates driven by Spring Cloud config; <code>/actuator/i18n</code> reads and writes live</td></tr><tr><td><a href="/projects/microsphere-dynamic">Dynamic</a></td><td>Infrastructure for runtime dynamic changes</td></tr></tbody></table><h3 id="observability" tabindex="-1">Observability <a class="header-anchor" href="#observability" aria-label="Permalink to "Observability""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-observability">Observability</a></td><td>Micrometer <code>MeterBinder</code>s (Sentinel / P6Spy / system), Prometheus collectors, CGroups and network metrics</td></tr><tr><td><a href="/projects/microsphere-spring">Spring</a></td><td><code>@EnableP6DataSource</code> wraps DataSources transparently for SQL tracing</td></tr><tr><td><a href="/projects/microsphere-alibaba-druid">Druid</a></td><td>SQL statement interception and logging as the collection entry point</td></tr><tr><td><a href="/projects/microsphere-mybatis">MyBatis</a></td><td>SQL interception pipeline emitting logs, metrics and trace data</td></tr><tr><td><a href="/projects/microsphere-spring-boot">Spring Boot</a></td><td>Four extra Actuator endpoints expose classpath artifacts, web endpoint mappings, config metadata and bound properties</td></tr></tbody></table><h3 id="resilience-and-flow-control" tabindex="-1">Resilience and flow control <a class="header-anchor" href="#resilience-and-flow-control" aria-label="Permalink to "Resilience and flow control""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-alibaba-sentinel">Sentinel</a></td><td>Flow control, circuit breaking and system protection across WebMVC, WebFlux, Druid, Hibernate, MyBatis, P6Spy and Redis</td></tr><tr><td><a href="/projects/microsphere-resilience4j">Resilience4j</a></td><td>Circuit breaker, bulkhead, rate limiter, retry and time limiter across Web MVC, Feign, MyBatis and JDBC</td></tr><tr><td><a href="/projects/microsphere-spring-cloud">Spring Cloud</a></td><td>Weighted round-robin load balancing and Tomcat dynamic configuration</td></tr><tr><td><a href="/projects/microsphere-multiactive">Multiactive</a></td><td>Same-zone preference with cross-zone fallback to isolate failure domains</td></tr></tbody></table><h3 id="service-governance" tabindex="-1">Service governance <a class="header-anchor" href="#service-governance" aria-label="Permalink to "Service governance""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-spring-cloud">Spring Cloud</a></td><td>Multi-registry registration (Nacos / Eureka / Consul / Zookeeper), registration lifecycle events, union discovery client</td></tr><tr><td><a href="/projects/microsphere-gateway">Gateway</a></td><td>The <code>we://</code> scheme routes discovered web endpoints dynamically, filterable by path, method, header and param</td></tr><tr><td><a href="/projects/microsphere-netflix">Netflix</a></td><td>Enhanced Eureka client metadata sync and a Tomcat-clustered highly available server</td></tr><tr><td><a href="/projects/microsphere-nacos">Nacos</a></td><td>Alibaba Nacos integration</td></tr></tbody></table><h3 id="data-access" tabindex="-1">Data access <a class="header-anchor" href="#data-access" aria-label="Permalink to "Data access""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-mybatis">MyBatis</a></td><td>SQL interception pipeline supporting security, throttling and caching concerns</td></tr><tr><td><a href="/projects/microsphere-hibernate">Hibernate</a></td><td>ORM extensions covering Hibernate 6.2–7.3 and 5.0–5.6</td></tr><tr><td><a href="/projects/microsphere-alibaba-druid">Druid</a></td><td>Connection-pool-level SQL interception and logging</td></tr><tr><td><a href="/projects/microsphere-redis">Redis</a></td><td>Non-intrusive Redis command interception, events and metrics, Kafka-backed replication</td></tr><tr><td><a href="/projects/microsphere-spring">Spring</a></td><td><code>@EnableTTLCaching</code> / <code>@TTLCacheable</code> for per-entry TTL caching</td></tr><tr><td><a href="/projects/microsphere-etcd">ETCD</a></td><td>etcd key-value store integration</td></tr></tbody></table><h3 id="internationalisation-and-security" tabindex="-1">Internationalisation and security <a class="header-anchor" href="#internationalisation-and-security" aria-label="Permalink to "Internationalisation and security""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-i18n">i18n</a></td><td>Layered message sources, priority composition, <code>MessageSource</code> bridge, Bean Validation translation, OpenFeign <code>Accept-Language</code> propagation, centralised i18n server</td></tr><tr><td><a href="/projects/microsphere-security">Security</a></td><td>Security capability extensions</td></tr><tr><td><a href="/projects/microsphere-spring">Spring</a></td><td><code>@Idempotent</code>, plus <code>HandlerMethodInterceptor</code> hooks</td></tr></tbody></table><h3 id="engineering-governance" tabindex="-1">Engineering governance <a class="header-anchor" href="#engineering-governance" aria-label="Permalink to "Engineering governance""></a></h3><table tabindex="0"><thead><tr><th>Project</th><th>Contribution</th></tr></thead><tbody><tr><td><a href="/projects/microsphere-build">Build</a></td><td>Unified parent POM: multi-TLS versions, locked plugins, six profiles, Central Portal publishing</td></tr><tr><td><a href="/projects/microsphere-bom">BOM</a></td><td>Cross-project version alignment</td></tr><tr><td><a href="/projects/microsphere-logging">Logging</a></td><td>One abstraction over JUL / Log4j / Log4j2 / Logback with runtime level changes and JMX</td></tr><tr><td><a href="/projects/microsphere-devops">DevOps</a></td><td>Engineering efficiency and operations support, including a TypeScript UI</td></tr></tbody></table><h2 id="a-typical-request-path" tabindex="-1">A typical request path <a class="header-anchor" href="#a-typical-request-path" aria-label="Permalink to "A typical request path""></a></h2><p>Here is a full cross-service request with Gateway, Spring Cloud and Observability enabled:</p><!----><p>Every hop on this path is independently switchable: skip the gateway and use Spring Cloud alone, skip Sentinel if you don't need flow control, and let Micrometer auto-configure observability — all without changing business code.</p><h2 id="choosing-your-starting-point" tabindex="-1">Choosing your starting point <a class="header-anchor" href="#choosing-your-starting-point" aria-label="Permalink to "Choosing your starting point""></a></h2><div class="tip custom-block"><p class="custom-block-title">Start small</p><p>Don't pull in everything at once. The recommended path is:</p><ol><li>Start with <code>microsphere-java-dependencies</code> and use the utility library;</li><li>Add <code>microsphere-spring-dependencies</code> once you have a Spring app to fix configuration and startup problems;</li><li>Move to <code>microsphere-spring-cloud-dependencies</code> when you go distributed;</li><li>Finally adopt L3 / L4 by pain point — observability, flow control and i18n as needed.</li></ol></div><div class="warning custom-block"><p class="custom-block-title">Don't mix release lines</p><p><code>main</code> (0.2.x) and <code>1.x</code> (0.1.x) target different Spring generations. <strong>Never mix modules from both lines in one application.</strong> See the <a href="/guide/compatibility">compatibility matrix</a>.</p></div></div></div></main><footer class="VPDocFooter" data-v-39a288b8 data-v-e257564d><!--[--><!--]--><div class="edit-info" data-v-e257564d><div class="edit-link" data-v-e257564d><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/microsphere-projects/microsphere-projects.github.io/edit/main/docs/architecture.md" target="_blank" rel="noreferrer" data-v-e257564d><!--[--><span class="vpi-square-pen edit-link-icon" data-v-e257564d></span> Edit this page on GitHub<!--]--></a></div><!----></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-e257564d><span class="visually-hidden" id="doc-footer-aria-label" data-v-e257564d>Pager</span><div class="pager" data-v-e257564d><a class="VPLink link pager-link prev" href="/" data-v-e257564d><!--[--><span class="desc" data-v-e257564d>Previous</span><span class="title" data-v-e257564d>Home</span><!--]--></a></div><div class="pager" data-v-e257564d><a class="VPLink link pager-link next" href="/ecosystem" data-v-e257564d><!--[--><span class="desc" data-v-e257564d>Next</span><span class="title" data-v-e257564d>Ecosystem</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-5d98c3a5 data-v-e315a0ad><div class="container" data-v-e315a0ad><p class="message" data-v-e315a0ad>Released under the Apache License 2.0</p><p class="copyright" data-v-e315a0ad>Copyright © 2021–2026 Microsphere Projects</p></div></footer><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"architecture.md\":\"BK7n2llr\",\"community.md\":\"DNVzDRui\",\"ecosystem.md\":\"BERrZ8FE\",\"guide_compatibility.md\":\"BYswySqC\",\"guide_dependencies.md\":\"DiCWF1Im\",\"guide_getting-started.md\":\"Ce2KbRpj\",\"index.md\":\"CRL412TC\",\"projects_index.md\":\"BiKqDQNq\",\"projects_microsphere-ai.md\":\"DKzaSoEB\",\"projects_microsphere-alibaba-druid.md\":\"Dr5hDhRP\",\"projects_microsphere-alibaba-sentinel.md\":\"CIKmZJGV\",\"projects_microsphere-bom.md\":\"1yjrzFN3\",\"projects_microsphere-build.md\":\"DLe6wO7z\",\"projects_microsphere-configuration.md\":\"B7zn9vK6\",\"projects_microsphere-devops.md\":\"BqmxNak5\",\"projects_microsphere-dubbo.md\":\"DTJDjv6b\",\"projects_microsphere-dynamic.md\":\"DXlHSHbr\",\"projects_microsphere-etcd.md\":\"nr810zm0\",\"projects_microsphere-gateway.md\":\"EW_cdakW\",\"projects_microsphere-hibernate.md\":\"D1sBka-x\",\"projects_microsphere-i18n.md\":\"BI6cMwCD\",\"projects_microsphere-jakarta.md\":\"BcHk_8jL\",\"projects_microsphere-java-enterprise.md\":\"Ds_EGUz5\",\"projects_microsphere-java.md\":\"CUrakZmG\",\"projects_microsphere-logging.md\":\"C9b4Xw4V\",\"projects_microsphere-microprofile.md\":\"DxL0tz6B\",\"projects_microsphere-multiactive.md\":\"DwGo9RiY\",\"projects_microsphere-mybatis.md\":\"Tb5ynlJT\",\"projects_microsphere-nacos.md\":\"DfHOQL63\",\"projects_microsphere-netflix.md\":\"Cs8SN6mO\",\"projects_microsphere-observability.md\":\"DbB2Jqob\",\"projects_microsphere-redis.md\":\"5hzHdfkY\",\"projects_microsphere-resilience4j.md\":\"CltLNIp-\",\"projects_microsphere-security.md\":\"Djd3TvU4\",\"projects_microsphere-spring-boot.md\":\"D79mHAkE\",\"projects_microsphere-spring-cloud.md\":\"B6y-MrkE\",\"projects_microsphere-spring.md\":\"DjzJb54s\",\"projects_microsphere-test.md\":\"DWl1-Pgz\",\"projects_microsphere-tomcat.md\":\"BCZus7OF\",\"projects_microsphere-tools.md\":\"CL9Dtj3X\",\"zh_architecture.md\":\"cG91pL06\",\"zh_community.md\":\"CZU2rFxG\",\"zh_ecosystem.md\":\"jf0xPNgn\",\"zh_guide_compatibility.md\":\"BH63LlG2\",\"zh_guide_dependencies.md\":\"CsOzdI9g\",\"zh_guide_getting-started.md\":\"id0dM93_\",\"zh_index.md\":\"C1fPsvIK\",\"zh_projects_index.md\":\"C0xlfD9-\",\"zh_projects_microsphere-ai.md\":\"CHB5z_T5\",\"zh_projects_microsphere-alibaba-druid.md\":\"aCrebDUZ\",\"zh_projects_microsphere-alibaba-sentinel.md\":\"CG2zYG0j\",\"zh_projects_microsphere-bom.md\":\"BtSkvR_i\",\"zh_projects_microsphere-build.md\":\"MqS5Np7m\",\"zh_projects_microsphere-configuration.md\":\"DyMOkJge\",\"zh_projects_microsphere-devops.md\":\"CF0RQmf2\",\"zh_projects_microsphere-dubbo.md\":\"DzYXUSN7\",\"zh_projects_microsphere-dynamic.md\":\"C2NFqWlh\",\"zh_projects_microsphere-etcd.md\":\"Q8RfzJiY\",\"zh_projects_microsphere-gateway.md\":\"BQ4nl-vd\",\"zh_projects_microsphere-hibernate.md\":\"D5lJZ846\",\"zh_projects_microsphere-i18n.md\":\"nDMJfsOC\",\"zh_projects_microsphere-jakarta.md\":\"DrNBc1aE\",\"zh_projects_microsphere-java-enterprise.md\":\"hyswxeAx\",\"zh_projects_microsphere-java.md\":\"D6Nuni-e\",\"zh_projects_microsphere-logging.md\":\"D16pUx4U\",\"zh_projects_microsphere-microprofile.md\":\"9QZ-CkcI\",\"zh_projects_microsphere-multiactive.md\":\"axDS4olK\",\"zh_projects_microsphere-mybatis.md\":\"nod8XAfN\",\"zh_projects_microsphere-nacos.md\":\"BG2pUdh3\",\"zh_projects_microsphere-netflix.md\":\"B9nbYJ8I\",\"zh_projects_microsphere-observability.md\":\"DyFmMSIp\",\"zh_projects_microsphere-redis.md\":\"C7TVl0sH\",\"zh_projects_microsphere-resilience4j.md\":\"ZvDofidV\",\"zh_projects_microsphere-security.md\":\"BeBCkccL\",\"zh_projects_microsphere-spring-boot.md\":\"BwAnVk4D\",\"zh_projects_microsphere-spring-cloud.md\":\"UgF8wtgt\",\"zh_projects_microsphere-spring.md\":\"DOiQhFGr\",\"zh_projects_microsphere-test.md\":\"C031ZEyV\",\"zh_projects_microsphere-tomcat.md\":\"CRhzezqj\",\"zh_projects_microsphere-tools.md\":\"DKNDOrUx\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Microsphere Projects\",\"description\":\"A layered enhancement system for the Java and Spring ecosystem — runtime foundation, framework extensions, ecosystem integrations and cross-cutting capabilities.\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":\"/logo.svg\",\"outline\":[2,3],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/microsphere-projects\"}]},\"locales\":{\"root\":{\"label\":\"English\",\"lang\":\"en-US\",\"title\":\"Microsphere Projects\",\"description\":\"A layered enhancement system for the Java and Spring ecosystem — runtime foundation, framework extensions, ecosystem integrations and cross-cutting capabilities.\",\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Architecture\",\"link\":\"/architecture\"},{\"text\":\"Projects\",\"link\":\"/projects/\",\"activeMatch\":\"/projects/\"},{\"text\":\"Guide\",\"link\":\"/guide/getting-started\",\"activeMatch\":\"/guide/\"},{\"text\":\"Ecosystem\",\"link\":\"/ecosystem\"},{\"text\":\"Community\",\"link\":\"/community\"}],\"sidebar\":{\"/projects/\":[{\"text\":\"L0 · Foundation\",\"items\":[{\"text\":\"Build\",\"link\":\"/projects/microsphere-build\"},{\"text\":\"BOM\",\"link\":\"/projects/microsphere-bom\"}]},{\"text\":\"L1 · Runtime\",\"items\":[{\"text\":\"Java\",\"link\":\"/projects/microsphere-java\"},{\"text\":\"Java EE\",\"link\":\"/projects/microsphere-java-enterprise\"},{\"text\":\"Jakarta\",\"link\":\"/projects/microsphere-jakarta\"},{\"text\":\"Logging\",\"link\":\"/projects/microsphere-logging\"},{\"text\":\"MicroProfile\",\"link\":\"/projects/microsphere-microprofile\"},{\"text\":\"Test\",\"link\":\"/projects/microsphere-test\"},{\"text\":\"Tools\",\"link\":\"/projects/microsphere-tools\"}]},{\"text\":\"L2 · Framework\",\"items\":[{\"text\":\"Spring\",\"link\":\"/projects/microsphere-spring\"},{\"text\":\"Spring Cloud\",\"link\":\"/projects/microsphere-spring-cloud\"},{\"text\":\"Spring Boot\",\"link\":\"/projects/microsphere-spring-boot\"}]},{\"text\":\"L3 · Integration\",\"items\":[{\"text\":\"Gateway\",\"link\":\"/projects/microsphere-gateway\"},{\"text\":\"Dubbo\",\"link\":\"/projects/microsphere-dubbo\"},{\"text\":\"Redis\",\"link\":\"/projects/microsphere-redis\"},{\"text\":\"Alibaba Druid\",\"link\":\"/projects/microsphere-alibaba-druid\"},{\"text\":\"Alibaba Sentinel\",\"link\":\"/projects/microsphere-alibaba-sentinel\"},{\"text\":\"Nacos\",\"link\":\"/projects/microsphere-nacos\"},{\"text\":\"Netflix\",\"link\":\"/projects/microsphere-netflix\"},{\"text\":\"Resilience4j\",\"link\":\"/projects/microsphere-resilience4j\"},{\"text\":\"Tomcat\",\"link\":\"/projects/microsphere-tomcat\"},{\"text\":\"MyBatis\",\"link\":\"/projects/microsphere-mybatis\"},{\"text\":\"etcd\",\"link\":\"/projects/microsphere-etcd\"},{\"text\":\"Hibernate\",\"link\":\"/projects/microsphere-hibernate\"}]},{\"text\":\"L4 · Cross-cutting\",\"items\":[{\"text\":\"i18n\",\"link\":\"/projects/microsphere-i18n\"},{\"text\":\"DevOps\",\"link\":\"/projects/microsphere-devops\"},{\"text\":\"Multiactive\",\"link\":\"/projects/microsphere-multiactive\"},{\"text\":\"Observability\",\"link\":\"/projects/microsphere-observability\"},{\"text\":\"Dynamic\",\"link\":\"/projects/microsphere-dynamic\"},{\"text\":\"Security\",\"link\":\"/projects/microsphere-security\"},{\"text\":\"Configuration\",\"link\":\"/projects/microsphere-configuration\"},{\"text\":\"AI\",\"link\":\"/projects/microsphere-ai\"}]}],\"/guide/\":[{\"text\":\"Guide\",\"items\":[{\"text\":\"Getting Started\",\"link\":\"/guide/getting-started\"},{\"text\":\"Dependencies & BOMs\",\"link\":\"/guide/dependencies\"},{\"text\":\"Compatibility Matrix\",\"link\":\"/guide/compatibility\"}]}],\"/\":[{\"text\":\"Overview\",\"items\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Architecture\",\"link\":\"/architecture\"},{\"text\":\"Ecosystem\",\"link\":\"/ecosystem\"}]}]},\"outlineTitle\":\"On this page\",\"docFooter\":{\"prev\":\"Previous\",\"next\":\"Next\"},\"lastUpdatedText\":\"Last updated\",\"returnToTopLabel\":\"Back to top\",\"sidebarMenuLabel\":\"Menu\",\"darkModeSwitchLabel\":\"Appearance\",\"lightModeSwitchTitle\":\"Switch to light theme\",\"darkModeSwitchTitle\":\"Switch to dark theme\",\"skipToContentLabel\":\"Skip to content\",\"editLink\":{\"pattern\":\"https://github.com/microsphere-projects/microsphere-projects.github.io/edit/main/docs/:path\",\"text\":\"Edit this page on GitHub\"},\"footer\":{\"message\":\"Released under the Apache License 2.0\",\"copyright\":\"Copyright © 2021–2026 Microsphere Projects\"},\"search\":{\"provider\":\"local\",\"options\":{\"translations\":{\"button\":{\"buttonText\":\"Search\",\"buttonAriaLabel\":\"Search\"},\"modal\":{\"displayDetails\":\"Display detailed list\",\"resetButtonTitle\":\"Reset search\",\"backButtonTitle\":\"Close search\",\"noResultsText\":\"No results for\",\"footer\":{\"selectText\":\"to select\",\"selectKeyAriaLabel\":\"enter\",\"navigateText\":\"to navigate\",\"navigateUpKeyAriaLabel\":\"up arrow\",\"navigateDownKeyAriaLabel\":\"down arrow\",\"closeText\":\"to close\",\"closeKeyAriaLabel\":\"escape\"}}}}}}},\"zh\":{\"label\":\"简体中文\",\"lang\":\"zh-CN\",\"link\":\"/zh/\",\"title\":\"Microsphere Projects\",\"description\":\"面向 Java / Spring 生态的分层增强体系:运行时基座、框架扩展、生态集成与横向能力。\",\"themeConfig\":{\"nav\":[{\"text\":\"首页\",\"link\":\"/zh/\"},{\"text\":\"架构大图\",\"link\":\"/zh/architecture\"},{\"text\":\"子项目\",\"link\":\"/zh/projects/\",\"activeMatch\":\"/zh/projects/\"},{\"text\":\"指南\",\"link\":\"/zh/guide/getting-started\",\"activeMatch\":\"/zh/guide/\"},{\"text\":\"生态\",\"link\":\"/zh/ecosystem\"},{\"text\":\"社区\",\"link\":\"/zh/community\"}],\"sidebar\":{\"/zh/projects/\":[{\"text\":\"L0 · 工程基座\",\"items\":[{\"text\":\"Build\",\"link\":\"/zh/projects/microsphere-build\"},{\"text\":\"BOM\",\"link\":\"/zh/projects/microsphere-bom\"}]},{\"text\":\"L1 · 运行时基座\",\"items\":[{\"text\":\"Java\",\"link\":\"/zh/projects/microsphere-java\"},{\"text\":\"Java EE\",\"link\":\"/zh/projects/microsphere-java-enterprise\"},{\"text\":\"Jakarta\",\"link\":\"/zh/projects/microsphere-jakarta\"},{\"text\":\"Logging\",\"link\":\"/zh/projects/microsphere-logging\"},{\"text\":\"MicroProfile\",\"link\":\"/zh/projects/microsphere-microprofile\"},{\"text\":\"Test\",\"link\":\"/zh/projects/microsphere-test\"},{\"text\":\"Tools\",\"link\":\"/zh/projects/microsphere-tools\"}]},{\"text\":\"L2 · 框架扩展\",\"items\":[{\"text\":\"Spring\",\"link\":\"/zh/projects/microsphere-spring\"},{\"text\":\"Spring Cloud\",\"link\":\"/zh/projects/microsphere-spring-cloud\"},{\"text\":\"Spring Boot\",\"link\":\"/zh/projects/microsphere-spring-boot\"}]},{\"text\":\"L3 · 生态集成\",\"items\":[{\"text\":\"Gateway\",\"link\":\"/zh/projects/microsphere-gateway\"},{\"text\":\"Dubbo\",\"link\":\"/zh/projects/microsphere-dubbo\"},{\"text\":\"Redis\",\"link\":\"/zh/projects/microsphere-redis\"},{\"text\":\"Alibaba Druid\",\"link\":\"/zh/projects/microsphere-alibaba-druid\"},{\"text\":\"Alibaba Sentinel\",\"link\":\"/zh/projects/microsphere-alibaba-sentinel\"},{\"text\":\"Nacos\",\"link\":\"/zh/projects/microsphere-nacos\"},{\"text\":\"Netflix\",\"link\":\"/zh/projects/microsphere-netflix\"},{\"text\":\"Resilience4j\",\"link\":\"/zh/projects/microsphere-resilience4j\"},{\"text\":\"Tomcat\",\"link\":\"/zh/projects/microsphere-tomcat\"},{\"text\":\"MyBatis\",\"link\":\"/zh/projects/microsphere-mybatis\"},{\"text\":\"etcd\",\"link\":\"/zh/projects/microsphere-etcd\"},{\"text\":\"Hibernate\",\"link\":\"/zh/projects/microsphere-hibernate\"}]},{\"text\":\"L4 · 横向能力\",\"items\":[{\"text\":\"i18n\",\"link\":\"/zh/projects/microsphere-i18n\"},{\"text\":\"DevOps\",\"link\":\"/zh/projects/microsphere-devops\"},{\"text\":\"Multiactive\",\"link\":\"/zh/projects/microsphere-multiactive\"},{\"text\":\"Observability\",\"link\":\"/zh/projects/microsphere-observability\"},{\"text\":\"Dynamic\",\"link\":\"/zh/projects/microsphere-dynamic\"},{\"text\":\"Security\",\"link\":\"/zh/projects/microsphere-security\"},{\"text\":\"Configuration\",\"link\":\"/zh/projects/microsphere-configuration\"},{\"text\":\"AI\",\"link\":\"/zh/projects/microsphere-ai\"}]}],\"/zh/guide/\":[{\"text\":\"入门指南\",\"items\":[{\"text\":\"快速开始\",\"link\":\"/zh/guide/getting-started\"},{\"text\":\"依赖与 BOM\",\"link\":\"/zh/guide/dependencies\"},{\"text\":\"版本兼容矩阵\",\"link\":\"/zh/guide/compatibility\"}]}],\"/zh/\":[{\"text\":\"概览\",\"items\":[{\"text\":\"首页\",\"link\":\"/zh/\"},{\"text\":\"架构大图\",\"link\":\"/zh/architecture\"},{\"text\":\"生态全景\",\"link\":\"/zh/ecosystem\"}]}]},\"outlineTitle\":\"本页目录\",\"docFooter\":{\"prev\":\"上一页\",\"next\":\"下一页\"},\"lastUpdatedText\":\"最后更新于\",\"returnToTopLabel\":\"回到顶部\",\"sidebarMenuLabel\":\"菜单\",\"darkModeSwitchLabel\":\"主题\",\"lightModeSwitchTitle\":\"切换到浅色模式\",\"darkModeSwitchTitle\":\"切换到深色模式\",\"skipToContentLabel\":\"跳到内容\",\"editLink\":{\"pattern\":\"https://github.com/microsphere-projects/microsphere-projects.github.io/edit/main/docs/:path\",\"text\":\"在 GitHub 上编辑此页\"},\"footer\":{\"message\":\"基于 Apache License 2.0 发布\",\"copyright\":\"Copyright © 2021–2026 Microsphere Projects\"},\"search\":{\"provider\":\"local\",\"options\":{\"translations\":{\"button\":{\"buttonText\":\"搜索\",\"buttonAriaLabel\":\"搜索\"},\"modal\":{\"displayDetails\":\"显示详细列表\",\"resetButtonTitle\":\"重置搜索\",\"backButtonTitle\":\"关闭搜索\",\"noResultsText\":\"没有找到结果:\",\"footer\":{\"selectText\":\"选择\",\"selectKeyAriaLabel\":\"回车\",\"navigateText\":\"切换\",\"navigateUpKeyAriaLabel\":\"上箭头\",\"navigateDownKeyAriaLabel\":\"下箭头\",\"closeText\":\"关闭\",\"closeKeyAriaLabel\":\"esc\"}}}}}}}},\"scrollOffset\":134,\"cleanUrls\":true}");</script>
</body>
</html>